问答详情
源自:2-9 强制类型转换

为什么我的输出已经变了,不在后面加(int)就提示运行成功输出错误?

#include <stdio.h>

int main()

{

    double num = 2.5;      //定义浮点型变量num并赋值为2.5

    int numb = (int) num;

    printf("num的整数部分是%d\n", numb);  

    return 0;

}


提问者:qq_慕函数6206282 2019-03-20 09:05

个回答

  • 三木7476
    2019-03-26 16:56:21

    int numb ;numb 是整型,占两个字节

    double num ; num 是双精度浮点型,占八个字节,按照慕课的说法只有小盒子才放得的进大盒子

    给你两种玩法

    #include <stdio.h>

    int main()

    {

        double num = 2.5;      //定义浮点型变量num并赋值为2.

        int num1 = (int)num;

        printf("num的整数部分是%d\n", (int)num);  

        printf("num的整数部分是%d\n", num1);  

        return 0;

    }


  • qq_慕函数6206282
    2019-03-20 09:06:15

    int numb = num;

     原本这样是运行成功但是显示输出错误,是为什么呢?求老师解答一下