S1E8 动动手第一题,我直接复制的甲鱼的代码,可是编译出来的没有数字,只有一行
0. 写一个华氏度到摄氏度的转换程序,用户输入华氏度,程序计算并输出对应的摄氏度#include <stdio.h>
int main()
{
float fah, cel;
printf("请输入华氏度:");
scanf("%f", &fah);
cel = (fah - 32) * 5 / 9;
printf("转换为摄氏度是:%.2f\n", cel);
return 0;
}
这是我直接复制的,我编译完只有一行请输入华氏度:
这是怎么回事呢,想的我头疼也想不明白 本帖最后由 风过无痕1989 于 2020-8-4 18:23 编辑
语句只有一行,没有错,若你需要多次,就要使用循环了,下面的程序是帮你设置了 6 次#include <stdio.h>
int main()
{
int i;
float fah, cel;
for(i 1;i <= 6;i++)
{
printf("请输入华氏度:");
scanf("%f", &fah);
cel = (fah - 32) * 5 / 9;
printf("转换为摄氏度是:%.2f\n", cel);
}
return 0;
}
本帖最后由 baige 于 2020-8-4 18:37 编辑
#include <stdio.h>
int main()
{
float fah, cel;//定义浮点型变量 fah cel
printf("请输入华氏度:"); // 往屏幕上输出请输入华氏度:也就是你所看到的 提示你输入一个数字
scanf("%f", &fah);// 接收输入的数字 你没有输入程序就会一直停在那里
cel = (fah - 32) * 5 / 9;// 计算
printf("转换为摄氏度是:%.2f\n", cel);//输出结果
return 0;
}
只有 printf("请输入华氏度:"); 会直接输出请 输入华氏度:出现在屏幕
当你输入数据时 printf("转换为摄氏度是:%.2f\n", cel);也会转换为对应的输出在屏幕
printf()是格式化输出,你看到的东西全部都是由他打印(输出)来的
当你有输入数字时才会打印 转换为摄氏度是: xxx 你可能没有输入数字吧,输入数字后才会显示下一句结果。 无所谓-浪 发表于 2020-8-5 15:26
你可能没有输入数字吧,输入数字后才会显示下一句结果。
好滴谢谢呢 本帖最后由 风过无痕1989 于 2020-8-9 23:50 编辑
当时回复你的,你没有选择最佳答案,看来不是你满意的。前两天我自己写了一个温度转换的程序,发给你参考:
#include <stdio.h>
#include <windows.h>
int main()
{
int k;
float T,hs,cs;
char SF;
printf("请输入温度:");
scanf("%f",&T);
getchar(); // 过滤掉输入后的回车确认
printf("输入的是华氏温度?是:Y,不是:N\n");
Sleep(500);
L: scanf("%c",&SF);
if (SF == 'Y')
{
k = 1;
}
else if (SF == 'N')
{
k = 2;
}
else
{
printf("你的输入不正确,请重新输入,Y or N");
goto L;
}
switch (k)
{
case 1:
{
cs = (T - 32) * 5 / 9;
printf("你输入的华氏温度转成摄氏温度为:%.2f\n",cs);
break;
}
case 2:
{
hs = T * 9 / 5 + 32;
printf("你输入的摄氏温度转成华氏温度为:%0.2f\n",hs);
break;
}
}
}
页:
[1]