演習課題 ex05-1.c

次のプログラムは、入力される整数値が 0 より大きく、かつ、入力される回数が 10回未満の間それら値を積算し、0 以下の値が入力されると積算値を printf() で出力し、整数値を入力した回数を return 文で返すプログラムである。 このプログラムと同じ動作をし、do〜while 文の代わりに for 文を用いて書かれたプログラム ex05-1.c を作成し、kiso2 コマンドを用いて提出しなさい。

#include <stdio.h>
 
int main() {
  int a;
  int cnt = 0;
  int sum = 0;
 
  do {
    scanf("%d", &a);
    sum += a;
    cnt++;
  } while ( a > 0 && cnt < 10);
 
  printf("sum = %d\n", sum);
  return cnt;
}

実行例:

t190900@s01cd0542-160:~/kiso2-2019/ex05$ ./ex05-1
1
2
3
4
5
0
sum = 15
t190900@s01cd0542-160:~/kiso2-2019/ex05$ ./ex05-1
1
2
3
4
5
-1
sum = 14
このプログラムでは、最後に入力された 0 以下の値も加算されます。余裕のある人は、最後に入力される 0 以下の値は加算されないようにプログラムを変更して下さい。
  • lecture/kiso2/ex/ex05-1.c.txt
  • 最終更新: 2019/10/21 12:37
  • by sano