这样为什么不可以?
num=(int)num
第一忘了加;
第二变量重新赋值是可以的,但是这里是强制转换成int型,但是变量本身是double,这样赋值会出错,就算重新定义数据类型,系统也不知道到底用哪种数据类型。
建议一:直接在输出语句强制转换成int型
#include <stdio.h> int main() { double num = 2.5; //定义浮点型变量num并赋值为2.5 printf("num的整数部分是%d\n",(int)num); return 0; }
建议二:定义一个int变量并且把强制转换的值赋给它
#include <stdio.h> int main() { double num = 2.5; //定义浮点型变量num并赋值为2.5 int temp=(int)num; printf("num的整数部分是%d\n",temp); return 0; }