プログラミング 2018


2018年度後期・水曜Ⅳ、金曜Ⅳ(–Ⅴ)コマ
担当: 富永・香川絹田
TA: 難波・植・木村・小池・佐野

情報システム・セキュリティコース/情報通信コース向の「プログラミング」の情報を掲載します。 (シラバス

シラバスの訂正:「成績評価の方法と基準」
「合格要件に達しない場合、追加課題などを課す。」→
「合格要件に達しない場合、追加課題などを課す場合がある。」

このページの短縮 URL は http://goo.gl/DRTRBN です。goo.gl/DRTRBN

本日の課題

お知らせ

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

(← これ以前のお知らせの開閉)

評価

演習科目であるため、全回の出席を前提とする。毎週の課題(30%)、小テスト(クイズ)と中間試験 (30%)、期末試験(40%)で採点し、授業の目標達成が確認できた者に単位を認定する。

なお、合格/不合格の判定については、単純な加算で 60点以上を合格とするが、 秀・優・良・可の判定については、割合を考慮して調整をすることがある。

毎週の課題の採点基準

その他

コンパイル・実行の方法

(← 開閉)

皆さんのノート PC や大学の PC には「Microsoft Visual Studio Express」 というコンパイラがインストールされているはずです。 インストールされていない場合は、 香川大学創造工学部学生向け Webサイトから、「ノートPC設定方法」というページを 見つけてインストールして下さい。インストールするときに、 「C++によるデスクトップ開発」にチェックをするのを、 忘れないようにしてください。 (Visual Studio のバージョンは 2012 以降にしてください。 2010以前はデフォルトの文字コードが異なるため、UTF-8 で保存されたソースコードをコンパイルできない可能性があります。) インストール後「ヘルプ」—「Microsoft Visual Studio のバージョン情報」で、 「インストールされている製品」に 「Visual C++ 20??」が入っていることを確認しておいてください。

エディタは notepad++, サクラエディタなどを推奨します。 サクラエディタの場合、「設定」−「共通設定」−「ファイル」−「ファイルの排他制御」 −「排他制御」を「しない」に変更しておくことをおすすめします。

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

  1. 「開発者コマンド プロンプト」を「アプリ」画面の ─「Visual Studio 201?」 ─ 「開発者コマンド プロンプト (Developer Command Prompt) for VS201?」から起動します。

  2. 「開発者コマンド プロンプト (Developer Command Prompt)」で hello.c を作成したディレクトリに移動し、 以下のコマンドでコンパイラを実行します。

      cl hello.c
    

    これで、hello.exe というファイルができているはずです。

  3. 以下のコマンドで、このプログラムを実行します。

      hello
    

もう少し詳しい、コマンドプロンプトでのコマンドなどの使用法の説明を C のプログラムの作成とコンパイルの手順というページにまとめました。

配布プリント

課題

本日の課題

(管理者用) データの更新 Quiz集計 管理用インデックスインデックス10月 11月 中間 12月 01月 02月 期末)、

過去の課題

(← ここ以前の課題の開閉)

第 19 回 12/12(講義)(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

第 20 回 12/14(演習)

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

(スタッフ専用) 位置確認, 提出状況チェック表(12月分)

課題に対するコメント

※終了後に中間テストの再挑戦試験(追試験)(ペーパー)を 実施

再挑戦試験(ペーパー)の解答例・コメント

第 21 回 12/19(講義)(6章「関数」つづき)

着席位置 クイズ

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

クイズに対するコメント

List 6-10 List 6-11 List 6-12     cbv.c     List 6-13 List 6-14     sentinel.c     List 6-15 List 6-16 List 6C-1 List 6-17

第 22 回 12/21(演習)

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

(スタッフ専用) 位置確認, 提出状況チェック表(12月分)find_max_sum.c 用

課題に対するコメント

中間テスト(オンライン)・再挑戦

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

(スタッフ専用) 位置確認, 提出状況チェックdec21_1.c 用dec21_2.c 用

再挑戦試験(オンライン)の解答例・コメント

第 23 回 01/09(講義)(6章「関数」つづき、7章「基本型」)
7-2節 の中の「ビット単位の論理演算」、「シフト演算」、 「オーバーフローと例外」は除く。

着席位置

(スタッフ専用) 位置確認,

List 6-18 List 6-19
List 7-1 List 7-2 List 7-3 List 7-4 List 7-5     sizeof.c     List 7-9 List 7-10 List 7-11 List 7-11a List 7-12

第 24 回 01/11(演習)

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

(スタッフ専用) 位置確認, クイズ成績 (位置), 提出状況チェック, 表(01月分)

クイズに対するコメント課題に対するコメント

中間テスト(ペーパー・オンライン)・再々挑戦

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

(スタッフ専用) 位置確認, 提出状況チェックjan11_1.c 用jan11_2.c 用

第 25 回 01/16、 第 26 回 01/23、 第 27 回 01/25 (※ 富永先生担当の総合演習)

第 28 回 01/30(講義)(7章「基本型」つづき・8章「いろいろなプログラムを作ってみよう」)
7-2節 の中の「ビット単位の論理演算」、「シフト演算」、 「オーバーフローと例外」は除く。 8-1 節「関数形式マクロ」、8-2 節「ソート」、8-3 節「列挙体」を除く。ただし、 8-1 節の中のコンマ演算子は扱う。

着席位置 クイズ

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

クイズに対するコメント

List 7-8     List 8-7     hanoi.cハノイの塔を試すtree.c (グラフィックス作成ページ) 再帰の例 1問: このプログラムの出力結果はどうなるか?)

第 29 回 02/01(講義・演習)(8章「いろいろなプログラムを作ってみよう」つづき)

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

(スタッフ専用) 位置確認, 提出状況チェック表(02月分)

課題に対するコメント

List 8-8 List 8-9 List 8-10 List 8-11

第 30 回 02/06(講義・演習)

着席位置 クイズ期末テスト過去問課題アップロード

(スタッフ専用) 位置確認, クイズ成績 (位置提出状況チェック表(02月分)
課題に対するコメント

第 31 回 02/08(期末テスト)オンライン

オンラインテストは、教科書・プリント・ノートなど持込み可、 (ペーパーテストは、持込み不可) です。

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

(スタッフ専用) 位置確認, 提出状況チェック提出状況チェック(表)feb08f_1.c 用feb08f_2.c 用feb08f_3.c 用feb08f_4.c 用

期末テスト(オンライン)に対するコメント

第 32 回 02/13(期末テスト)ペーパー

ペーパーテストは、持込み不可、 (オンラインテストは、教科書・プリント・ノートなど持込み可)です。

期末試験で合格者が極端に少ない場合に、救済試験を実施する可能性があります。 実施する場合、日程は 2/26 〜 2/28 の間に実施します。

現在の課題

02/27(救済テスト)オンライン

オンラインテストは、教科書・プリント・ノートなど持込み可、 (ペーパーテストは、持込み不可) です。

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

(スタッフ専用) 位置確認, 提出状況チェック提出状況チェック(表)feb27f_1.c 用feb27f_2.c 用feb27f_3.c 用feb27f_4.c 用

02/27(救済テスト)ペーパー

ペーパーテストは、持込み不可、 (オンラインテストは、教科書・プリント・ノートなど持込み可)です。

教科書

  新・明解C言語入門編
  柴田 望洋 著
  SBクリエイティブ
  ISBN978-4-7973-7702-6

この教科書の、おおむね第 1 〜 8 章に相当する部分を扱います
(7-2 節 の中の「ビット単位の論理演算」、「シフト演算」、「オーバーフローと例外」、 8-1 節「関数形式マクロ」、8-2 節「ソート」、8-3 節「列挙体」を除きます。ただし、 8-1 節の中のコンマ演算子は扱います)。

索引全ソースプログラムは、 是非、ダウンロードページから入手して、 索引は印刷しておいてください。

この授業でやらないこと

上記の教科書や C 言語の標準的な解説書:

    プログラミング言語 C 第 2 版
    B.W.カーニハン D.M.リッチー 著 
    石田 晴久 訳
    共立出版
    ISBN 978-4320026926

    ※原著
    C Programming Language, 2nd Edition
    Brian W. Kernighan, Dennis M. Ritchie
    Prentice Hall
    ISBN 978-0131103627

に書かれている事柄で、この授業で取り扱わない(主な)項目は以下のとおりです。

文字列、 ポインタ、構造体、ファイル入出力、(ここまでは2年生の「中級プログラミング」で扱います。)

ビット演算子、goto 文とラベル、 関数形式マクロ、列挙体 (enum)、 共用体 (union)、ビットフィールド、分割コンパイル、 動的メモリ割当て (malloc と free)、(これらは2年生以降の各授業で必要に応じて紹介します。)

Koji Kagawa