プログラミングⅠ

科目基礎情報

学校 久留米工業高等専門学校 開講年度 平成30年度 (2018年度)
授業科目 プログラミングⅠ
科目番号 1E13 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 2
開設学科 電気電子工学科 対象学年 1
開設期 通年 週時間数 2
教科書/教材 (1)Cの絵本 第2版 C言語が好きになる新しい9つの扉,翔泳社(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言語でプログラミングが自由にできるようにすることを目的とする.適宜,高専機構が準備した教材によるセキュリティー教育も行う.授業では,ポインタ等をより深く理解するためにC言語の演習問題を解く.
授業の進め方・方法:
学習においては,自宅での独習が重要である.単に教科書を読むだけではなく,自分でPC(Personal Computer)ソフトウェアの環境を整備し,教科書内容を入力し理解を進める必要がある.授業では,英語の問題集を中心に解説を行うが,あくまで自宅における学習が前提となる.ソフトウェアをコンパイルできるPC環境を必要とすることもあり,自分専用のノートブックPCを持つことが望ましい.10万円もするような上等なPCは必要ない.メモリー4GB以上の64bitノートブックパソコン(中古でよい)で十分である.
注意点:
参考書:
(1)明快入門 C スーパービギナー編 (林晴比古実用マスターシリーズ),林晴比古,SBクリエイティブ
(2)標準講座C,翔泳社,Stephen G. Kochan
(3)高専機構 情報セキュリティ教材 「K-SEC情報モラル教材」(高専機構 「情報システムユーザーガイドライン」「低学年教材」等)

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

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 オリエンテーション:学習に必要なノートブックPCに関する説明など,英語学習について 学習方法を大まかに理解する.
2週 PCを使ってみる.情報セキュリティ キーボードを理解し,PCを操作できる.情報セキュリティを学ぶ必要性を理解する.
3週 コマンドライン操作 OS等のコマンドを打てる.
4週 コンピューターの基礎,CloudでC言語を使う 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週

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー情報を適切に収集・処理・発信するための基礎的な知識を活用できる。1
論理演算と進数変換の仕組みを用いて基本的な演算ができる。1
コンピュータのハードウェアに関する基礎的な知識を活用できる。1
情報セキュリティの必要性および守るべき情報を認識している。1
個人情報とプライバシー保護の考え方についての基本的な配慮ができる。1
インターネット(SNSを含む)やコンピュータの利用における様々な脅威を認識している1
インターネット(SNSを含む)やコンピュータの利用における様々な脅威に対して実践すべき対策を説明できる。1
専門的能力分野別の専門工学電気・電子系分野電気回路オームの法則を説明し、電流・電圧・抵抗の計算ができる。1
情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。2
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。2
変数の概念を説明できる。2
データ型の概念を説明できる。2
制御構造の概念を理解し、条件分岐を記述できる。2
制御構造の概念を理解し、反復処理を記述できる。2
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。1
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。2
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。2
計算機工学整数・小数をコンピュータのメモリ上でディジタル表現する方法を説明できる。1
基数が異なる数の間で相互に変換できる。1
整数を2進数、10進数、16進数で表現できる。1
小数を2進数、10進数、16進数で表現できる。1

評価割合

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