求大神告知

来源:2-9 强制类型转换

李丙子

2015-07-30 22:27

这样为什么不可以?

写回答 关注

1回答

  • Perona
    2015-07-30 22:40:21
    已采纳
     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;
    }


    李丙子

    非常感谢!

    2015-08-01 14:05:40

    共 1 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926210 学习 · 20797 问题

查看课程

相似问题