#include <stdio.h>int main(){ double num = 2.5; int num=(int)num; printf("num%d\n", num); return 0;}
6 回答

_潇潇暮雨
TA贡献646条经验 获得超225个赞
变量num被重复定义了,另外格式化字符串里面应该写成:"%d\n",完整代码:
#include <stdio.h> int main() { double num = 2.5; int a=(int)num; //另外取一个变量名 printf("%d\n", a); return 0; }

栩栩秋水
TA贡献1条经验 获得超0个赞
我当初有这个疑惑,但是看例题就明白了,你这里改成“int num1 = (int)num”就可以啦,原理是新的变量的形式(int)不会和旧的(double)占用同一个变量名而发生矛盾。

Eve03
TA贡献1条经验 获得超0个赞
int num=(int)num; 中出现了错误,num本来是一个double型的变量(名称),然而“int num”的意思是再定义一个 int型的变量名num 。变量名重复。
你要把double型转换为int型的话,直接printf("%d\n",(int)num);就好了。

lili5464645
TA贡献1条经验 获得超0个赞
#include <stdio.h>
int main()
{
double num = 2.5;
int num1;
num1=(int)num;
printf("num%d\n", num1);
return 0;
}
- 6 回答
- 0 关注
- 2168 浏览
添加回答
举报
0/150
提交
取消