演習12-2

次の手順に従い、プログラムを作成しなさい。

【問1】

(1)

外部変数で整数型の配列 seiseki[100][2] を用意する。

配列seiseki

(2)

main()関数で次の処理を行う。

  1. Ctrl+Z」(UNIXの環境では「Ctrl+D」) が入力されるまで、学生番号と点数を入力し、入力した学生番号と点数を引数にして、set_ten() 関数を呼ぶ。
  2. Ctrl+Z が入力されたら、配列 seiseki の中身をデータがセットされた個数分表示する

(3)

set_ten()関数で次の処理を行う。

(関数の仕様)

関数 I/F
int set_ten( int no, int ten );
入力

no … 学生番号

ten … 点数

出力
配列 seiseki にセットしたデータ数
  1. 整数型の静的変数で errcnt と setcnt を宣言する。
  2. 引数の点数が 0点未満か 100点より大きいときには errcnt の個数を更新し、次のメッセージを表示する。

    「入力エラーです。エラーの回数は errcnt 回です。」

  3. そうでなければ配列 seiseki の setcnt番目に引数の番号と点数を代入し、setcnt の値を更新する。
  4. setcnt の値を return する。
実行例

学生番号と点数を入力してください(終了条件:CTRL+Z)1
44
学生番号と点数を入力してください 2
65
学生番号と点数を入力してください 3
76
学生番号と点数を入力してください 4
-1
入力エラーです。エラーの回数は1回です。
学生番号と点数を入力してください 4
51
学生番号と点数を入力してください 5
101
入力エラーです。エラーの回数は2回です。
学生番号と点数を入力してください ^Z
学生番号=1 点数=44
学生番号=2 点数=65
学生番号=3 点数=76
学生番号=4 点数=51


 緑字はキーボードからの入力

解答例戻る


banner初心者のためのポイント学習C言語」
Copyright(c) 2000-2004 TOMOJI All Rights Reserved