例題 15 個の整数を順に読み込み,その中の最大値を表示しなさい.ただし,各整数は入力順に配列 a に格納すること. 方針・アルゴリズム仮定より, 入力された各整数は a[0], a[1], ..., a[4] としてアクセスできる.ここでは 「最大値は m 番目の整数( a[m] )」 という言い方をし, m が 0 〜 4 のいずれになるかを見つけ出す.
コーディング例
1 /*
2 * プログラミング演習 第 12 回
3 * [例題 1]
4 * (C) 2006 Hirohisa AMAN <aman@cs.ehime-u.ac.jp, aman@computer.org>
5 */
6 #include <stdio.h>
7
8 int main(void){
9 int i, m, a[5];
10
11 /* a[i] を読み込む */
12 for ( i = 0; i < 5; i++ ){
13 scanf("%d", &a[i]);
14 }
15
16 m = 0; /* a[0] を最大値と仮定 */
17 for ( i = 1; i < 5; i++ ){
18 if ( a[m] < a[i] ){
19 m = i; /* 最大値の位置の更新 */
20 }
21 }
22
23 printf("最大値 = %d\n", a[m]);
24
25 return 0;
26 }
※左端の数字は行番号であり,ソースコードには含まれない点に注意!
コンパイル & 実行例
$ gcc example12_1.c [Enter]
$ ./a.out [Enter]
8 -2 91 0 1 [Enter]
最大値 = 91
|