读书人

为啥这个程序不如人意

发布时间: 2012-07-31 12:33:46 作者: rapoo

为什么这个程序不如人意?
#include <stdio.h>
void main()
{
float c,f;
printf("请输入华氏温度:");
scanf("%f\n",&f);
c=5/9*(f-32);
printf("摄氏温度为:%f\n",c);

}
很奇怪的,要输入两遍,才会有结果,而且全是错的,怎么回事呢?

[解决办法]

C/C++ code
#include <stdio.h>void main() {    float c,f;    printf("请输入华氏温度:");    fflush(stdout);    scanf("%f",&f);    c=5.0f/9.0f*(f-32.0f);    printf("摄氏温度为:%f\n",c);}
[解决办法]
探讨
C/C++ code

#include <stdio.h>
void main() {
float c,f;

printf("请输入华氏温度:");
fflush(stdout);
scanf("%f",&f);
c=5.0f/9.0f*(f-32.0f);
printf("摄氏温度为:%f\n",c);

}
……

[解决办法]
上边都改了……你多加了个\n,所以要连续输入两次
[解决办法]
fflush(stdout);清空输出缓冲区
[解决办法]
探讨

C/C++ code
#include <stdio.h>
void main() {
float c,f;

printf("请输入华氏温度:");
fflush(stdout);
scanf("%f",&f);
c=5.0f/9.0f*(f-32.0f);
printf("摄氏温度为:%f\n",c);

}

读书人网 >C语言

热点推荐