プログラミング言語I

科目基礎情報

学校 東京工業高等専門学校 開講年度 令和02年度 (2020年度)
授業科目 プログラミング言語I
科目番号 0069 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 1
開設学科 情報工学科 対象学年 2
開設期 前期 週時間数 2
教科書/教材 webによる教材の提供
担当教員 吉本 定伸

到達目標

C言語プログラミングの基礎修得を目標とし,以下を行うことができる.
・プログラムを読みどのような動作が行なわれるか流れを追うことができる.
・処理手順を考え,プログラムを記述,コンパイル・実行し,結果について検討できる.

ルーブリック

理想的な到達レベルの目安(優)標準的な到達レベルの目安(良)最低限の到達レベルの目安(可)未到達レベルの目安(不可)
プログラムを読みどのような動作が行なわれるか流れを追うことができる.基本的なプログラムの動作がわかり,その関連する動作を理解している.簡単なプログラムを読むことができ,関連する動作が分かる.簡単なプログラムを読み,その動作が分かる.簡単なプログラムの動作が分からない.
処理手順を考え,プログラムを記述,コンパイル・実行し,結果について検討できる.基本的なプログラムが作成でき,コンパイル・実行を行い,実行結果について検討することができる.簡単なプログラムを作成し,コンパイル・実行を行い,実行結果について検討することができる.簡単なプログラムを作成し,コンパイル・実行し,結果の確認ができる.簡単なプログラムを作成できない.

学科の到達目標項目との関係

教育方法等

概要:
C言語の修得ではプログラムのリーディングとライティングが重要である.この2つを交互に行いながらC言語を修得する.Webテキストのサンプルプログラムの解説等を読みながら文法の要点を理解し課題を行う.
授業の進め方・方法:
課題は実行結果とともにWeb提出する.課題受付システムと担当教員によるチェックを経て課題が受理される.将来新しいプログラミング言語を習得する際でも,自分で解説を読みながら理解する学習方法は有効であり,その学習方法も習得できる.
注意点:
Webテキストを読む時は,文法上の要点に自分で「気づく」ことが大事である.
・課題では処理手順をよく考えるためのヒントもWebテキスト中にあるのでよく読むこと.
・課題にはどのように出力するか指示がある場合があるのでそれに従うこと.また,課題の実行結果については正しいかどうか検討してから提出すること.
・課題は遅れないように提出する.計画的に進め,状況に応じ放課後等も利用し進めること.
・定期試験前には自分の理解度,ケアレスミスを犯しやすいところはどこかよく検討してから臨むこと.

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス
Webテキストの紹介,エディタによるプログラム作成,コンパイル・実行,課題のWeb提出.
授業・授業方法の狙いを理解する.エディタでのプログラムの記述,コンパイル・実行,課題提出方法を理解する.
2週 printfを使ったプログラムを作成.提出形式ファイルを作成する. printfと書式制御を使ったプログラムの動作を理解でき,それを使ったプログラムを作成できる.int型,double型変数を使える.=の意味を理解できプログラムの流れを追うことができる.
3週 scanfの動作を理解し,それを使ったプログラムを作成する. scanfで実行時にデータを入力できるプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
4週 forループの繰り返しを理解し,それを使ったプログラムを作成する. forループを使った繰り返しのあるプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
5週 二重forループの繰り返しを理解し,それを使ったプログラムを作成する. 二重forループを使った繰り返しのあるプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
6週 forループを用いた連続加算のプログラムを作成する.whileループ,dowhileループの繰り返しを理解し,それを使ったプログラムを作成する.
forループを使った連続加算などの繰り返しのあるプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
7週 各種ループの使い分けを理解し,適切なループを用いたプログラムを作成する. 各種ループを使い分けて繰り返しのあるプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
8週 中間テスト ここまで内容に関して筆記試験で60点以上を獲得する.
2ndQ
9週 if,if-else,if-else if-else,switch caseによる,判断分岐構造を使ったプログラムを作成する. 判断分岐構造を持つプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
10週 ループと判断分岐構造を持つプログラムを理解し,その構造を用いたプログラムを作成する. ループと判断分岐構造を持つプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
11週 配列の使い方を理解し,それを使ったプログラムを作成する. 配列を使ったプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
12週 char型変数の使い方,文字コードの扱い,printfにおける%cの使い方を理解し,それを使ったプログラムを作成する. char型変数を使ったプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
13週 char型変数の配列である文字列の使い方を理解し,それを使ったプログラムを作成する. char型変数の配列である文字列を使ったプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
14週 二次元配列の使い方を理解し,それを使ったプログラムを作成する. 二次元配列を使ったプログラムの動作を理解でき,それを使ったプログラムを作成できる.プログラムの各行逐次動作説明ができる.
15週 配列を利用したいくつかの課題についてプログラムを作成する. 配列を使った課題プログラムを作成できる.ここまでの内容に関して筆記試験で60点以上を獲得する準備ができる.
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4前2
変数の概念を説明できる。4前2
データ型の概念を説明できる。4前2
制御構造の概念を理解し、条件分岐を記述できる。4前9
制御構造の概念を理解し、反復処理を記述できる。4前4
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4前1
主要な言語処理プロセッサの種類と特徴を説明できる。4前1
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。4前1
その他の学習内容少なくとも一つの具体的なコンピュータシステムについて、起動・終了やファイル操作など、基本的操作が行える。3
分野別の工学実験・実習能力情報系分野【実験・実習能力】情報系【実験・実習】フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。3

評価割合

試験提出物等合計
総合評価割合7525100
基礎的能力000
専門的能力7525100
分野横断的能力000