|
40鱼币
本帖最后由 Dr丶温 于 2018-2-12 09:27 编辑
我只要键入q就无限循环下去了,不求甚解。。。- #include <stdio.h>
- void Temperatures(float shuru)
- {
- const float yidianba = 1.8;
- const float sanshierdianling = 32.0;
- const float erqisandianyiliu = 273.16;
-
- float sheshidu, jiudui;
-
- sheshidu = yidianba * shuru + sanshierdianling;
- jiudui = sheshidu + erqisandianyiliu;
-
- printf("%.2f 华氏度 = %.2f 摄氏度 = %.2f 绝对温度\n", shuru, sheshidu, jiudui);
- }
- int main(void)
- {
- float shuru;
-
- printf("请输入华氏温度:");
- scanf("%f", &shuru);
-
- while(shuru != 'q')
- {
- Temperatures((float)shuru);
- printf("请继续输入(输入q退出):");
- scanf("%f", &shuru);
- }
-
-
-
-
- getch();
- return 0;
- }
复制代码
应该是scanf函数的问题,你用%f去接受一个字符类型的输入导致输入流出现异常,每次数据读取都不正确并且无法清空输入流中的数据
|
最佳答案
查看完整内容
应该是scanf函数的问题,你用%f去接受一个字符类型的输入导致输入流出现异常,每次数据读取都不正确并且无法清空输入流中的数据
|