プログラミングⅠ

科目基礎情報

学校 久留米工業高等専門学校 開講年度 2017
授業科目 プログラミングⅠ
科目番号 0077 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 2
開設学科 電気電子工学科 対象学年 1
開設期 通年 週時間数 2
教科書/教材 (1)明快入門C スーパービギナー編,SBクリエイティブ(2)新訂 新C言語入門 シニア編,SBクリエイティブ(3)The C PUZZLE BOOK,ADDISON-WESLEY,ALAN R. FEUER(これはAmazonから各自購入すること)
担当教員 加藤 直孝

到達目標

1.初歩的なコンピューターアーキテクチャーを理解する.
2.コンピューターのOSと対話ができる.
3.コンパイル等に必要なコンピューター環境を独力で構築できる.
4.ポインタを含む既存のC言語によるプログラムの内容を理解できる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1CPU, メモリー, ディスク間のやり取りが理解できる.CPU, メモリー, ディスクを意識してコンピューターを操作できる.CPU, メモリー, ディスクの区別がつかない
評価項目2対話している対象をはっきり理解している.対話先のモジュールが異なることを理解している.コンピューター全体としてのみ理解できる.
評価項目3各環境設定の意味合いを理解できる.指示書に従った環境設定ができる.コンパイルの意味が分からない.
評価項目4ポインタと値を自由に使い分けることができる.配列等におけるポインタの処理が理解できる.ポインタの意味が分からない.

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

教育方法等

概要:
初歩的なコンピューターアーキテクチャーを理解し,C言語でプログラミングが自由にできるようにすることを目的とする.なお,Scratch等の他の言語も経験し同時にプログラム作品を作成する.授業では,ポインタ等をより深く理解するためにC言語の演習問題を解く.
授業の進め方・方法:
学習においては,自宅での独習が重要である.単に教科書を読むだけではなく,自分でPC(Personal Computer)ソフトウェアの環境を整備し,教科書内容を入力し理解を進める必要がある.授業では,英語の問題集を中心に解説を行うが,あくまで自宅における学習が前提となる.ソフトウェアをコンパイルできるPC環境を必要とすることもあり,自分専用のノートブックPCを持つことが望ましい.10万円もするような上等なPCは必要ないが,メモリー4GB以上の64bitノートブックパソコン(中古でよい)を持っていることが望ましい.
注意点:
参考書:
(1)C言語教科書入門編,日経BP社,川俣晶
(2)標準講座C,翔泳社,Stephen G. Kochan

評価方法詳細:
定期試験 50%,課題等その他 50% を目安として評価する.60点以上を合格とする.再試は行わない.

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 オリエンテーション:学習に必要なノートブックPCに関する説明など,英語学習について 学習方法を大まかに理解する.
2週 C言語とは;Scratch入門 Scratchを使える.
3週 コマンドライン操作 OS等のコマンドを打てる.
4週 ハローワールド;コンピューターの基礎 Hello World!を出力できる.
5週 Visual C の使い方 Visual CでHello Worldのプログラムをコンパイルできる.
6週 gcc(MinGW)の使い方 gccでHello Worldのプログラムをコンパイルできる.
7週 Operators: Basic Arithmatic operators OperatorとOperandとそれらのevaluation(評価)を理解できる.
8週 Assignment Operators AssignmentもOperatorであると理解できる.
2ndQ
9週 Logic and Increment Operators LogicとIncrement Operatorを使える.
10週 Bitwise Operators Bitwise Operatorsを使える.
11週 Relational and Conditional Operators Relational and Conditional Operatorsを使える.
12週 Operator Precedence and Evaluation Operator Precedence and Evaluationを表を見て決めることができる.
13週 Basic Types: Characters, String, and Integer Types Type(型)を理解できる.
14週 Integer and floating point casts castを理解できる.
15週 More casts castの理解を深める.
16週
後期
3rdQ
1週 Control Flow: if Statement ifを含む複雑な制御を理解できる.
2週 while and for statement whileを含む複雑な制御を理解できる.
3週 Statement nesting 複雑な制御を理解できる.
4週 switch, break, and continue switchを含む複雑な制御を理解できる.
5週 Storage Class: Blocks スコープを理解できる.
6週 Functions(1) 関数の意味を理解できる.
7週 Functions(2) 関数の意味を理解できる.
8週 More functions(1) 関数における変数の受け渡しを理解できる.
4thQ
9週 More functions(2) 関数における変数の受け渡しを理解できる.
10週 Files(1) ファイルを分割してプログラムできる.
11週 Files(2) ファイルを分割してプログラムできる.
12週 Array of Pointers(1) ポインタと配列の関係を理解できる.
13週 Array of Pointers(1) ポインタと配列の関係を理解できる.
14週 Pointers and Arrays: Simple Pointer and Array(1) 単純なポインタを理解できる.
15週 Simple Pointer and Array(2) 単純なポインタを理解できる.
16週

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー情報を適切に収集・処理・発信するための基礎的な知識を活用できる。3
論理演算と進数変換の仕組みを用いて基本的な演算ができる。2
コンピュータのハードウェアに関する基礎的な知識を活用できる。3
数値計算の基礎が理解できる2
コンピュータにおける初歩的な演算の仕組みを理解できる。2
データの型とデータ構造が理解できる2
専門的能力分野別の専門工学電気・電子系分野電気回路オームの法則を説明し、電流・電圧・抵抗の計算ができる。1

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合50000050100
基礎的能力000001010
専門的能力5000002070
分野横断的能力000002020