#include <stdio.h>
int acc(int x){ // 更新はacc関数の内部のみ
static int sum=0;
static int count=0;
if(x==-1){
sum=0;
count=0;
}
else if (x == 0) {
return sum;
}
else if(x==-2){
return count;
}
else {
sum=sum+x;
count++;
}
return 0;
} //上記は例であり、acc関数の内部は自由に書き換えてよい
int main(){
int score, num, i;
double ave;
for(i=0;i<num;i++){
acc(score);
}
printf("数字の個数は%dです。\n",acc
(-2)); printf("合計値は%dです。 \n",acc
(0)); ave=(double)acc(0)/acc(-2);
acc(-1);
acc(3);
printf("数字の個数は%dです。\n",acc
(-2)); printf("合計値は%dです。 \n",acc
(0));
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmludCBhY2MoaW50IHgpeyAvLyDmm7TmlrDjga9hY2PplqLmlbDjga7lhoXpg6jjga7jgb8Kc3RhdGljIGludCBzdW09MDsKc3RhdGljIGludCBjb3VudD0wOwppZih4PT0tMSl7CnN1bT0wOwpjb3VudD0wOwp9IAplbHNlIGlmICh4ID09IDApIHsKICAgICAgICByZXR1cm4gc3VtOwp9CmVsc2UgaWYoeD09LTIpewpyZXR1cm4gY291bnQ7Cn0KCmVsc2UgewpzdW09c3VtK3g7CmNvdW50Kys7Cn0KcmV0dXJuICAwOwp9IC8v5LiK6KiY44Gv5L6L44Gn44GC44KK44CBYWNj6Zai5pWw44Gu5YaF6YOo44Gv6Ieq55Sx44Gr5pu444GN5o+b44GI44Gm44KI44GECmludCBtYWluKCl7CmludCBzY29yZSwgbnVtLCBpOwpkb3VibGUgYXZlOwpwcmludGYoIuaVsOWtl+OBruWAi+aVsOOCkuWFpeWKm+OBl+OBpuOBj+OBoOOBleOBhDoiKTsKc2NhbmYoIiVkIiwgJm51bSk7CnByaW50ZigiJWRcbiIsbnVtKTsKZm9yKGk9MDtpPG51bTtpKyspewpwcmludGYoIuato+OBruaVtOaVsOOCkuWFpeWKm+OBl+OBpuOBj+OBoOOBleOBhDoiKTsKc2NhbmYoIiVkIiwgJnNjb3JlKTsKcHJpbnRmKCIlZFxuIixzY29yZSk7CmFjYyhzY29yZSk7Cn0KcHJpbnRmKCLmlbDlrZfjga7lgIvmlbDjga8lZOOBp+OBmeOAglxuIixhY2MoLTIpKTsKcHJpbnRmKCLlkIjoqIjlgKTjga8lZOOBp+OBmeOAgiBcbiIsYWNjKDApKTsKYXZlPShkb3VibGUpYWNjKDApL2FjYygtMik7CnByaW50Zigi5bmz5Z2H44GvJWxm44Gn44GZ44CCXG4iLGF2ZSk7CmFjYygtMSk7CmFjYygzKTsKcHJpbnRmKCLmlbDlrZfjga7lgIvmlbDjga8lZOOBp+OBmeOAglxuIixhY2MoLTIpKTsKcHJpbnRmKCLlkIjoqIjlgKTjga8lZOOBp+OBmeOAgiBcbiIsYWNjKDApKTsKCnJldHVybiAwOwp9Cg==