プログラミング基礎
Programming Language C

授業科目区分

専門科目
専門科目 情報テクノロジーコース

わくラボの使用について:使用しない
情報テクノロジーコース必修 2単位 1年次 後期

教職課程(数学)選択

担当教員

小泉真也

研究室のホームページ,SNSなど

NDC

7.64

科目分類コード

1102 01

オフィスアワー

この科目のキーワード

プログラミング言語 C、手続き型プログラミング言語

説明に使用する言語

主として日本語を使用する

使用する教材の言語

日本語で記述された資料を使用する

この科目に必要な日本の文化・事情の知識について

到達目標

将来的なシステム開発や数値計算などの汎用的なプログラムの作成、資産に対する理解を見据えて、Cによるプログラミングソースの読解力をつけることと、リファレンスの利用や資産の再利用によるプログラミング技術の習得を目標とします。

ディプロマポリシーとの関連性

情報メディア基礎力:情報メディアの技術的および社会的な変化に対応し得る基盤となる知識とスキル

授業の簡単な概要

プログラミング言語 C の構文について学習します。 また、手続き型プログラミング言語の学習モデルとして、他の手続き型プログラミング言語学習のアプローチを理解します。 プログラミング言語 C は汎用的な言語として、現在もなお多くのプログラミング資産を有します。そして本質的な側面として、C は「システム記述言語」であり、コンピュータ・システムを理解するためにも、エンジニアには必須の技術です。

学習内容

  1. プログラミング言語 C について
  2. 実行ファイル生成までの手順
  3. 変数宣言、定数、データ型、算術演算子、入出力関数
  4. 処理手続き、真偽計算に用いる演算子、制御構造(分岐)
  5. 制御構造(反復)
  6. 関数、サブルーチン
  7. 再帰、変数のスコープ、静的/動的
  8. 言語機能の拡張:ヘッダファイルとプリプロセッサ
  9. 配列、文字列
  10. アドレス、ポインタ
  11. 文字列のポインタ・文字列操作関数
  12. アドレス計算、データ型変換、main()関数の引数、動的メモリ管理
  13. ファイルの読み書き
  14. レコード型:構造体・共用体・列挙型
  15. 分割コンパイル・Makefile
  16. デバッグ/その他の予約語・関数

授業時間外での学修

講義資料に基づく予復習の時間として4時間:例題は、書き写しではなく、動作の過程を追った読解を求めます。

成績評価の基準と方法

(S)プログラミング言語 C に基づく動作手順を理解し、難易度の高い問題の解を、考察・根拠・論拠を交えて適切に推測できること。
(A)プログラミング言語 C に基づく動作手順を理解し、簡単な問題の解を、考察・根拠・論拠を交えて適切に推測できること。
(B)プログラミング言語 C を用いて簡単な問題の解を導くにあたり、引用に止まらず、考察がなされ、その根拠・論拠の提示に相応の努力が認められること。
(C)プログラミング言語 C を用いて簡単な問題の解を導くにあたり、引用に止まらず、考察がなされていること。

達成度評価(評価方法:合計100点)

試験:      / 100
レポート:    100 / 100
小テスト(中間テストなど含む): / 100
小レポート(中間レポートなどを含む): / 100
作品:      / 100
ポートフォリオ: / 100
その他:

教科書・テキスト

LMS(WEB)上で配布します。

参考図書・参考文献等

Brian W. Kernighan、Dennis M. Ritchie 著、石田晴久 訳、”プログラミング言語C(第2版訳書訂正版)”、共立出版

履修もしくは取得していなければいけない科目

特定の科目は定めませんが、講義などを通じてコンピューター・リテラシーを有することを求めます。

学習支援

質問は、LMSやメール等で逐次受付けます。レポートに対しては、適宜、改善点を提示します。

授業に関連する実務経験

企業に所属・大学での研究で、ソフトウェア開発の経験あり(C++, Java, Basic系、MASM)

その他この科目を履修するために必要な条件

プログラミングに取り組むにあたって、もはや本講義でコンピューター・リテラシーを教わることは期待できません。履修過程から、少なくともタイピング・スキルに深刻な問題がなく、”フォルダ”、”ファイル”の概念が理解できており、メニューや関連付けを通じてアプリケーションを起動することができ、ドラッグ&ドロップを理解するといった”準備”ができていることを強く求めます。