- 締切済み
処理の流れの説明のしかたがわかりません。
プログラムの課題が出たのですがソースコードはなんとか穴埋めでできたのですが説明文を簡単につけなければならないのですがあんまり理解してないのでどのように説明したら良いかよくわかりません。お願いします。 10個の整数を配列し保存しそのデータのうちから最大値と最小値を表示するプログラムです。 #include <stdio.h> void main(void) { int data[10]; int i; int max,min; for(i=0;i<10;i++){ printf("input data No. %d ->",i+1); scanf("%d",&data[i]); } max=data[0]; min=data[0]; for(i=1;i<10;i++){ if(data[i]>max){ max=data[i]; } if(data[i]<min){ min=data[i]; } } printf("MAX = %d\n",max); printf("MIN = %d\n",min); } .
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- 和泉 博(@hiroshi09s)
- ベストアンサー率54% (59/109)
#include <stdio.h> // 出力 printf() 関数のための定義ヘッダーファイルを取り込みます void main(void) // 何も引数を取らない、また何も返さない main() 関数とします { int data[10]; // data という名前の int 型のローカル変数整数データ枠を10個分確保し int i; // i という名前の int 型変数を確保します int max,min; // また、max, min という名前の int 型変数を確保します for(i=0;i<10;i++){ // 変数 i を 0~9 まで、1刻みで {} 内の各命令を繰り返し printf("input data No. %d ->",i+1); // 標準出力パスに入力を促す入力個数付き文字を出力表示し scanf("%d",&data[i]); // 標準入力パスから整数値をひとつ読み込みます } // そして、for に戻って以上の操作を繰り返します max=data[0]; // 最大値max に data[0] の値を代入し min=data[0]; // 最小値min にも data[0] の値を代入します for(i=1;i<10;i++){ // 変数 i を 0~9 まで、1刻みで {} 内の各命令を繰り返し if(data[i]>max){ // もし、配列データdata[] の i 番目の値が 最大値max より大きいなら max=data[i]; // そのデータdata[i] を最大値max に代入します } if(data[i]<min){ // もし、配列データdata[] の i 番目の値が 最小値mix より小さいなら min=data[i]; // そのデータdata[i] を最小値mix に代入します } } // そして、for に戻って以上の操作を繰り返します。 printf("MAX = %d\n",max); // 最大値max をコメントを付けて標準出力パスに出力表示し printf("MIN = %d\n",min); // 同様に、最小値min につてもコメントを付けて出力表示します } // 以上が、main()関数の内容です
#include <stdio.h> void main(void) { /*入力された整数を保持する変数を配列で宣言する。*/ int data[10]; /*ループ用カウンタを宣言する。*/ int i; /*判定結果の、最大値・最小値を格納する変数を宣言する。*/ int max,min; /*10個の整数を入力させ、配列に格納する。*/ for(i=0;i<10;i++){ printf("input data No. %d ->",i+1); scanf("%d",&data[i]); } /*一番最初のデータを最大値・最小値に設定する。*/ max=data[0]; min=data[0]; /*配列の中のデータを順番に処理する*/ for(i=1;i<10;i++){ /*現在処理中のデータが、今までの最大値より大きかったら、*/ if(data[i]>max){ /*現在処理中のデータを最大値とする。*/ max=data[i]; } /*現在処理中のデータが、今までの最小値より小さかったら、*/ if(data[i]<min){ /*現在処理中のデータを最小値とする。*/ min=data[i]; } } /*求めた最大値・最小値を標準出力へ出力する。*/ printf("MAX = %d\n",max); printf("MIN = %d\n",min); }
- koko_u_u
- ベストアンサー率18% (216/1139)
>10個の整数を配列し保存しそのデータのうちから最大値と最小値を表示するプログラムです。 説明されとるがな。