我在C:
中编写了这段代码 double x1 = 7.52, x2 = 7, x3 = 8;
int m = 0;
double sum = x1 + x2*m + x3*m*m;
printf("%lf", m, sum);
但无论我改变了m的值,总和总是为0 ..
为什么不进行正常计算?
感谢
答案 0 :(得分:3)
因为您正在打m
,int
"%lf"
说明符适用于double
。
你也传递了更多的参数给printf()
而不是格式说明符,这意味着你没有启用编译器警告,你应该,特别是如果你是初学者。
更改此
printf("%lf", m, sum);
到
printf("m = %d\nsum = %f\n", m, sum);
看看我的意思。
答案 1 :(得分:0)
实际上您正在打印m
-
printf("%lf", m, sum);
你必须打印 -
printf("%lf",sum);