基础问题,关于scanf函数输入问题。
本帖最后由 saitosai1234 于 2014-8-10 23:14 编辑void main()
{
double s;
double average;
int i;
printf("input 10 score:\n");
for( i=0; i<10; i++)
{
scanf("%f",&s);
}
average = score_average(s);
printf("The average is %f", average);
}
新手,程序如上,就是scanf函数给s数组赋值有问题,运行结果不对,不知道哪里出问题了。请高手指教。
单步调试时,发现数组s无法正常赋值,像第一个输入100,s的值却是乱码。 double 类型格式好像是%lf吧 double类型的格式为lf 是滴,数量类型搞错了。问题已搞定。 刚想回答 发现解决了~ 总觉得应该是
scanf( " %f " , s[ i ] );
吧 %f和%lf在VC++6.0上应该已经不分了吧 貌似是还区分lf和f的 double s;
double average;
int i;
printf("input 10 score:\n");
for( i=0; i<10; i++)
{
scanf("%f",&s);
}
请楼主留心这个数组s 数组名本身就是个地址不应该写scanf("%f",&s); 应该为scanf("%f",s); 推荐你用dev-c,简单又易用,一下子就出来了有没有啊:shy:
http://bbs.fishc.com/data/attachment/album/201408/11/150745dt4m7hj70r0p5c05.jpg
了解一下 换成双精度型的
页:
[1]