while文を使い値を入力して平均値を出すプログラムを作る課題が出たのですが
小数点を入力するとバグってしまい、またループを外れても平均値が出なかったりと
なかなか上手く行きません。どこら辺が悪いのか教えていただけないでしょうか。
使用しているコンパイラはLCpadです。
ソースコード
/*kadai5.c*/
#include<stdio.h>
int main()
{
int a=1,kaisu=1,sum=0;
while(a!=0)
{
printf("実数値を入力してください");
scanf("%d",&a);
sum=sum+a;
kaisu++;
}
printf("平均値は%fです。",sum/kaisu);
return 0;
}
学校の課題で質問です
Re: 学校の課題で質問です
小数点を扱おうとしているのに sum に int型 を使っているのが間違いのうちの一つですね。
Re: 学校の課題で質問です
と言っているのに、
a が int 型だったり "%d" で整数値の入力を求めていたりするのは、明らかに矛盾していますよね。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。
プログラムは思ったとおりには動かない。書いたとおりに動く。