解答例12-2

【問1】

#include <stdio.h>

int set_ten( int no, int ten );
int seiseki[100][2];

int main( void )
{
	int tensu, gno, cnt = 0, i;

	printf( "学生番号と点数を入力してください(終了条件:CTRL+Z)" );
	while( scanf( "%d%d", &gno, &tensu ) != EOF ) {
		cnt = set_ten( gno, tensu );
		printf( "学生番号と点数を入力してください  " );
	}
	for ( i = 0; i < cnt; i++ ) {
		printf( "学生番号 = %d  点数 = %d\n", 
					seiseki[i][0], seiseki[i][1] );
	}
	
	return 0;
}

int set_ten( int no, int ten )
{
	static int errcnt = 0;
	static int setcnt = 0;

	if ( ten < 0 || ten > 100 ) {
		errcnt++;
		printf( "入力エラーです。エラーの回数は%d回です。\n", errcnt );
	}
	else {
		seiseki[setcnt][0] = no;
		seiseki[setcnt][1] = ten;
		setcnt++;
	}
	
	return setcnt;
}


※Windows9xとMe上で、Windows系のCを用いて「CTRL+Z」の入力を実行した場合、
 「CTRL+Z」の入力後、次の改行までの表示が行なわれません。(2002.06.11 追記)

戻る


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