プログラミングⅠ 2011


2011年度後期・水曜・Ⅳ、金曜・Ⅴコマ
担当: 香川・高木・松下・藤澤
TA: 空田・中山・真野・北岡

信頼性情報システム工学科(RISE)向の「プログラミングⅠ」の情報を掲載します。

お知らせ

(新しいものほど上です。)

この授業の約束事(再確認)

課題採点状況

各個人へのメッセージ を見て、OKとなっていないものについてはやり直しをしておいて下さい。

その他

コンパイル・実行の方法

皆さんのノートPCや大学のPCには「Borland Cコンパイラ」 というコンパイラがインストールされているはずです。 インストールされていない場合は、 香川大学工学部学生向け Webサイトから、「ノートPC設定方法」というページを 見つけてインストールして下さい。

以下では hello.cという名前のソースファイルをエディタで作成したとします。

  1. コマンドプロンプトで hello.cを作成したディレクトリに移動し、 以下のコマンドでコンパイラを実行します。
      bcc32 hello.c
    
    hello.exeというファイルができているはずです。
  2. 以下のコマンドで、このプログラムを実行します。
      hello
    

もう少し、詳しい説明をCのプログラムの作成とコンパイルの手順というページにまとめました。

配布プリント

課題

(管理者用)トップページデータの更新Quiz集計 管理用インデックス

第 1.0 週 10/05, 10/07

List 1-1 List 1-2

着席位置課題アップロード
(スタッフ専用) 位置確認, 提出状況チェック
評価

第 2.0 週 10/12, 10/14 (1章 「まずは慣れよう」、2章「演算と型」)

List 1-3 List 1-4 List 1-5 List 1-6 List 1-7 List 1-8 List 1-9 List 1-10 List 1-11 List 1-12
List 2-1 List 2-2

着席位置課題アップロード
(スタッフ専用) 位置確認提出状況チェック

課題の評価

第 3.0 週 10/19, 10/21 (2章「演算と型」、3章「プログラムの流れの分岐」)

List 2-3 List 2-4 List 2-5 List 2-6 List 2-7 List 2-8 List 2-9 List 2-10 List 2-11 List 2-12
List 3-1 List 3-2 List 3-3 List 3-4 List 3-5 List 3-6 List 3-7 List 3-8 List 3-9

着席位置課題アップロード
(スタッフ専用) 位置確認提出状況チェック
課題の評価

第 3.5 週 10/26 (3章「プログラムの流れの分岐」つづき)

List 3-10 List 3-11 List 3-12

着席位置クイズ
(スタッフ専用) クイズ成績 (位置

第 4.5 週 11/02, 11/04 (3章「プログラムの流れの分岐」つづき、4章「プログラムの流れの繰返し」)

List 3-13 List 3-14 List 3-15 List 3-16     addtime.c maxswap.c     List 3-17 List 3-18 List 3-19
List 4-1

着席位置課題アップロード
(スタッフ専用) 位置確認提出状況チェック
課題の評価

第 5.5 週 11/09, 11/11 (4章「プログラムの流れの繰返し」つづき)

List 4-2 reverse.c List 4-3 List 4-4 List 4-5 List 4-6     increment.c
List 4-7 List 4-8 List 4-9 List 4-10 List 4-11

着席位置課題アップロード
(スタッフ専用) 位置確認提出状況チェック
課題の評価

第 6.5 週 11/16, 11/18 (4章「プログラムの流れの繰返し」つづき)

List 4-12 List 4-13 List 4-14     fact.c polygon.c
List 4-15 List 4-16 List 4-17 List 4-18 List 4-19     triangle.c diamond.c

着席位置課題アップロード
(スタッフ専用) 位置確認提出状況チェック
課題の評価

第 7.0 週 11/25 (中間テスト)

着席位置中間テスト (オンライン)中間テスト・アップロード
(スタッフ専用) 位置確認提出状況チェック
中間テストの解答例・評価

第 8.0 週 11/30, 12/02 (5章「配列」)

List 5-1 List 5-2 List 5-3 List 5-4 List 5-5 List 5-6 List 5-7 List 5-8 List 5-9 List 5-10 List 5-11

着席位置課題アップロード
(スタッフ専用) 位置確認提出状況チェック
課題の評価

第 9.0 週 12/07, 12/09 (5章「配列」つづき)

List 5-12 List 5-13     arrInit.c breakTest.c
List 5-14 List 5-15 List 5-16 List 5-17 List 5-18 List 5-19

着席位置クイズ課題アップロード
(スタッフ専用) 位置確認提出状況チェック
クイズ成績 (位置
課題の評価

第 10.0 週 12/14, 12/16 (6章「関数」)

List 6-1 List 6-2 List 6-3 List 6-4 List 6-5 List 6-6 List 6-7 List 6-8 List 6-9 List 6-10

着席位置課題アップロード
(スタッフ専用) 位置確認提出状況チェック
中間 (再挑戦)テスト (オンライン) 中間 (再挑戦)テスト・アップロード
課題の評価

第 10.5 週 12/21 (総合演習)

svg.h, svg.c,

FirstSample.c(サンプルその 1)
フルページで表示
SimpleSample.c(サンプルその 2)
フルページで表示
HSBGrad.c(サンプルその 3)
フルページで表示
TurtleSample.c
(タートルグラフィックスのサンプル)
フルページで表示
diamond.c
フルページで表示
graph.c
フルページで表示
Phyllotaxis.c
フルページで表示
gradation2.c
フルページで表示

着席位置課題アップロード
(スタッフ専用) 位置確認提出状況チェック

第 11.5 週 01/10, 01/11 (6章「関数」つづき)

List 6-11 List 6-12 List 6-13 List 6-14 List 6-15 List 6-16 List 6-17 List 6-18
cbv.c

着席位置クイズ課題アップロード

(スタッフ専用) 位置確認提出状況チェック
クイズ成績 (位置
課題の評価

第 12.5 週 01/18, 01/20 (6章「関数」つづき、7章「基本型」)

List 6-19 List 6-20
List 7-2 List 7-3 List 7-4 List 7-9 List 7-10 List 7-11     size.c

着席位置クイズ課題アップロード

(スタッフ専用) 位置確認提出状況チェック
クイズ成績 (位置
課題の評価

第 13.5 週 01/25, 01/27 (7章「基本型」つづき、8章「いろいろなプログラムを作ってみよう」)

List 7-12 List 7-13     sizeof.c
List 8-6 List 8-7     hanoi.c tree.c (グラフィックス作成)
List 8-8 List 8-9

着席位置課題アップロード

(スタッフ専用) 位置確認提出状況チェック
課題の評価

第 14.5 週 02/01, 02/03 (8章「いろいろなプログラムを作ってみよう」つづき、総合演習)

foo.c
List 8-10 List 8-11   

クイズ

お知らせ: クイズの 1番と 4番の問題文に誤りがありました(本文で赤字訂正済み)。 ただし、1番の間違いは解答に影響があったと考えられにくいので、特に配慮しません。 4番の間違いは混乱を与えた可能性があるので、4番は全員正解扱いとします。

(スタッフ専用) 位置確認
クイズ成績 (位置

svg.h, svg.c,

Sierpinski.c(サンプルその 1)
フルページで表示
Koch.c(サンプルその 2)
フルページで表示

着席位置課題アップロード

(スタッフ専用) 位置確認提出状況チェック

第 15.0 週 02/08 (総合演習)

第 16.0 週 2/10 オンライン, 2/15 ペーパー (期末テスト)

場所は 2/10, 2/15とも 3101教室です。

オンラインテストは、教科書・プリント・ノートなど持込み可、
  ペーパーテストは、持込み不可です。 (←「定期試験における科目別注意事項」には持込み可とされていますが訂正です。)

着席位置期末テスト (オンライン)期末テスト・アップロード正答例と評価 (含ペーパーテスト)
(スタッフ専用) 位置確認提出状況チェック

教科書

  新版 明解C言語入門編
  柴田 望洋 著
  ソフトバンクパブリッシング
  ISBN4-7973-2792-8
この本の、おおむね第1〜8章に相当する部分を扱います。

この授業でやらないこと

上記の教科書やC言語の標準的な解説書:
  プログラミング言語C 第2版
  B.W.カーニハン D.M.リッチー 著 
 石田 晴久 訳
  共立出版
に書かれている事柄で、この授業で取り扱わない(主な)項目は以下のとおりです。
文字列、 ポインタ、構造体、ファイル入出力、 ビット演算子、goto文とラベル、 関数形式マクロ、列挙体 (enum)、 共用体 (union)、ビットフィールド、分割コンパイル、 動的メモリ割当て (mallocとfree)、

Koji Kagawa