C语言菜鸟问题摄氏度转换问题
原题是这个样子滴:编写摄氏温度与华氏温度的换算程序。实现:用户输入温度数值并指明该数值表示摄氏度(c)还是华氏温度(f)程序将根据不同的输入(华氏或是摄氏)疾行不同的换算。例如如果用户输入40.2c,程序将输出104.36 F;如果用户输入104.36 F,诚心将输出40.2c。已知换算公式,摄氏温度=5/9(华氏-32)
#include <stdio.h>
void main()
{
char c;
float f;
scanf("%lf%lf",&c,&f);
if(c=='c')
{
c=5.0/9.0*(f-32);
}
else printf("%f",c);
if(f=='f')
{
f=5.0*9.0*(0+32);
}
printf("%f",f);
}
跪求各位大神指点指引我迷失的方向,现在我的主要问题是我不知道那里错了,还有就是华氏温度和摄氏度之间的换算也不太明白,
看下,这样行不?{:1_1:}
#include <stdio.h>
void main()
{
char c;
double f;
scanf("%lf%c", &f, &c );
if( c == 'f' )
{
f = 5.0 / 9.0 * ( f - 32 );
printf("%.2lf c\n", f );
}
if( c == 'c' )
{
f = f * 9 / 5.0 + 32;
printf("%.2lf f\n", f );
}
}
能给我讲解一下吗 #include <stdio.h>
void main()
{
char c;
double f; // 一般用上 double,因为 float 精度不高
scanf("%lf%c", &f, &c ); // 注意读取数据相对应
if( c == 'f' )
{
f = 5.0 / 9.0 * ( f - 32 );
printf("%.2lf c\n", f ); // 输出结果保留两位小数(下同)
}
if( c == 'c' )
{
f = f * 9 / 5.0 + 32;
printf("%.2lf f\n", f );
}
}
/*
附上 (个人经验):
对于刚开始学 C ,最好用多一些时间在代码上,自己琢磨琢磨。
这些都是 C 的关键字熟练操作,多多练习就行。
有时候不知道哪里有错,可以
1. 使用断点
2. 使用输出函数 printf 加以验证
3. system("pause"); 函数暂停程序继续运行
*/
页:
[1]