1 #include <stdio.h> 2 #include <string.h> 3 int main (){ 4 5 int n = 0,y = 1; 6 float x; 7 float average = 0; 8 9 10 fgets(s,sizeof(s),stdin); 11 n = sscanf(s,"%f",&x); 12 13 for(int i = 0;i != n + 1;i++){ 14 15 average += s[i]; 16 17 } 18 19 average = average /n; 20 21 printf("平均は%fです\n",average); 22 23 return 0; 24 }
任意の数の数値を打ち込んで打ち込んだ数すべて足した後、打ち込んだ数だけ割って平均を出そうとしたのですが、なかなかうまくいかなくて、、、。
sscanfが打ち込んだ数だけ返り値として返してくれるのでそれをもとにプログラムを書こうと思いました。もっといいやり方があるのは知っているのですが、sscanfの返り値のもとできるようにしたいです。できそうな、案のある方ぜひよろしくお願いします!
ちなみに10と11行目が怪しくてできないです。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/08/09 12:09
2018/08/09 12:20
2018/08/09 12:48
退会済みユーザー
2018/08/10 01:59
退会済みユーザー
2018/08/10 02:10
退会済みユーザー
2018/08/10 02:16
2018/08/10 03:34
退会済みユーザー
2018/08/10 07:19
2018/08/10 07:20