fork download
  1. #include <stdio.h>
  2. int acc(int x){ // 更新はacc関数の内部のみ
  3. static int y=0;
  4. static int k=0;
  5. if(x==-1){
  6. y=0;
  7. k=0;
  8. }
  9. else if(x==-2){
  10. return k;
  11. }
  12.  
  13. else if(x==0){
  14.  
  15. return y;
  16. }
  17. else{
  18. y=y+x;
  19. k++;
  20. }
  21.  
  22. return y;
  23. } //上記は例であり、acc関数の内部は自由に書き換えてよい
  24. int main(){
  25. int score, num, i;
  26. double a,b,c;
  27. printf("数字の個数を入力してください:");
  28. scanf("%d", &num);
  29. printf("%d\n",num);
  30. for(i=0;i<num;i++){
  31. printf("正の整数を入力してください:");
  32. scanf("%d", &score);
  33. printf("%d\n",score);
  34. acc(score);
  35. }
  36. printf("数字の個数は%dです。\n",acc(-2));
  37. printf("合計値は%dです。 \n",acc(0));
  38. b=acc(0);
  39. c=acc(-2);
  40. a=b/c;
  41. printf("平均値は%lfです。\n",a);
  42. acc(-1);
  43. acc(3);
  44. printf("数字の個数は%dです。\n",acc(-2));
  45. printf("合計値は%dです。 \n",acc(0));
  46. return 0;
  47. }
Success #stdin #stdout 0s 5392KB
stdin
5 2 3 4 6 7
stdout
数字の個数を入力してください:5
正の整数を入力してください:2
正の整数を入力してください:3
正の整数を入力してください:4
正の整数を入力してください:6
正の整数を入力してください:7
数字の個数は5です。
合計値は22です。 
平均値は4.400000です。
数字の個数は1です。
合計値は3です。