刚开始学者求帮助

C语言 码拜 8年前 (2016-04-08) 750次浏览
#include <stdio.h>
int main(void)
{
double a,b;
scanf(“%f”,&b);
a=2.54*b;
printf(“%f cm\n”,a);
}
本人用cfree编了这么一个制度转换的程序,调试完后,执行时却总显示是0.000000,不知有何错误?
解决方案

10

%lf
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。

20

double对应%lf
你用%f读入double,可能只写入了8个字节中的4个字节,所以输出的值不对。

scanf("%lf",&b);

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明刚开始学者求帮助
喜欢 (0)
[1034331897@qq.com]
分享 (0)