关于Printf跟Define的语句疑问
关于Printf和Define的语句疑问
在一个程序中 #Define PI 3.1416后输入如下语句
/* Note:Your choice is C IDE */
#include "stdio.h"
#define PI 3.1416
main()
{
float a;
a=PI*4;
printf("%d",a);
}
为什么答案不是3.1416*4?
另外Printf语句的printf("%d",a);前面的%d,a是指将a变为整数。
------解决方案--------------------
printf("%d", a);
这句中 %d 表示 a 是整数输出
换成 printf("%f", a); 按照 float 类型输出
------解决方案--------------------
结果应该是跟你输出的格式有关的,%d表示整数输出,最后看到的输出结果应该3.1416*4后取整的结果
------解决方案--------------------
"Printf语句的printf("%d",a);前面的%d,a是指将a变为整数。"
printf函数没有这个功能,这是你的妄想,请回去复习基础知识
printf函数的第一个参数是格式字符串,里面的%d指的是后面的参数列表中有一个整形参数,printf根据格式字符串来判断后面参数列表中的参数类型并作出相应处理
你说“%d是指将a变为整数”,printf回答“没听说过这规定”,就这么简单
在一个程序中 #Define PI 3.1416后输入如下语句
/* Note:Your choice is C IDE */
#include "stdio.h"
#define PI 3.1416
main()
{
float a;
a=PI*4;
printf("%d",a);
}
为什么答案不是3.1416*4?
另外Printf语句的printf("%d",a);前面的%d,a是指将a变为整数。
------解决方案--------------------
printf("%d", a);
这句中 %d 表示 a 是整数输出
换成 printf("%f", a); 按照 float 类型输出
------解决方案--------------------
结果应该是跟你输出的格式有关的,%d表示整数输出,最后看到的输出结果应该3.1416*4后取整的结果
------解决方案--------------------
"Printf语句的printf("%d",a);前面的%d,a是指将a变为整数。"
printf函数没有这个功能,这是你的妄想,请回去复习基础知识
printf函数的第一个参数是格式字符串,里面的%d指的是后面的参数列表中有一个整形参数,printf根据格式字符串来判断后面参数列表中的参数类型并作出相应处理
你说“%d是指将a变为整数”,printf回答“没听说过这规定”,就这么简单