学校の課題で、
・クラスの人数を入力
・平均点を計算する
・赤点の数を数える
・国数英の点数を入力
・点数入力の際に0~100以外の数字が入力されたときにエラーを出す
というものを出されました。
クラスの人数を入力までは動いたのですが、
クラスの人数分の配列を組むのに苦戦しています。
クラスの人数分作りたいのでなんとか変数を入れたいのですが、配列の要素数に変数は入れれないので
scanfで読み取った変数[a]の数字をなんとかして定数にして変数に使いたいです。
int main(void) { int a,min,max,ch; float avg; /* aがクラスの人数、minは最小、maxは最大、chは戻り判定に使う */ do{ printf("クラスの人数を入力してください==>"); scanf("%d",&a); if(0<=a){ /* ここのifは正負の判定に使う */ printf("クラスの人数は%d人でよろしいですか?\n",a); printf("よろしければ0を入力してください。\n"); printf("訂正する場合は1を入力してください。\n"); printf("0 or 1 ==>"); scanf("%d",&ch);} else{ printf("【エラー】負の数が入力されました。\n"); printf("自動的に再処理を開始します。\n"); ch=1;} if(ch!=1&&ch!=0){ /* 0,1が入力されているか確かめる */ printf("【エラー】0,1以外の数字が入力されました。\n"); printf("自動的に再処理を開始します。\n"); ch=1;} /* 0か1以外の数字が入力されたので無理やり1にして再実行させる */ }while(ch == 1); /* ここまでがクラスの人数を入力する処理 */ /* クラスの人数分の配列を組む */ コード
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。