一个让人郁闷的问题

来源:百度知道 编辑:UC知道 时间:2024/05/26 18:23:32
main()
{
float a,b,c;
scanf("ban jing %f",&a);
b=2*a*3.14;
c=3.14*a*a;
printf("zhong chang %f\n",b);
printf("mian ji %f",c);
getch();
}
怎么输出结果全是错的

#include <stdio.h>

int main()
{
float a,b,c;
printf("Enter ban jing:\n");
scanf("%f",&a);
b = 2*a*3.14;
c = 3.14*a*a;
printf("zhou chang %f\n",b);
printf("mian ji %f\n",c);
getch();

return 0;
}

错的是什么??同意LS的说法,scanf后面不要加额外的字符,只包含格式化符和变量即可。还有,最后加上getch()是一个不好的习惯。

用一楼的答案,那个答案好,你那个scanf里不能这样,在scanf里好像不能用空格,如果能用那你输入时就要这样输(假如半径是1)ban jin 1回车才行.

举个例子啊 怎么错了
你那个scanf写法最好不要这样写

scanf("ban jing %f",&a); 的f有问题,
加l试试看,scanf("ban jing %lf",&a);