解答例
#include <stdio.h>
#define N 100 /* プログラム中のNを100に置き換え。このような記法をマクロと呼ばれる。変数ではないことに注意 */
int data[N]; /* 100個入力可 data[0] - data[99] */ /* 大域変数 */
int main(void) {
int i, n, d, sum;
/* nは個数(データ配列使用の長さ)、iはdata配列プリント時の添え字カウンタ dは一旦入力を受け取る変数*/
n = 0; /* 個数を数える際の定番の初期化 */
sum = 0; /* 合計するときの定番の初期化 掛け合わせるときの定番は 1 合計用の変数名はsum */
/* scanfの戻り値を利用していることに注意。control zでは、scanfの戻り値がEOFになる */
/* 100個以上 入力した場合の例外処理はしていない */
/* 繰り返し入力の初級編の定番。EOFは、END OF FILEのこと。ファイル読み込みの記述でも定番 */
while (scanf("%d",&d) != EOF) {
data[n] = d;
sum = sum + data[n]; /* sum += data[n] ともかける */
n++;
}
printf("data : ");
for (i = 0; i < n ; i++)
printf("%5d ", data[i]);
printf("\n");
printf("sum = %d\n", sum);
printf("mean = %5.2f\n", (float)sum/n);
/* 整数同士の演算では、小数点以下切り捨て。そこで、sumをfloatに型変換(キャスト) */
return 0;
}