为什么运行不了吖

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

qq_江船夜雨闻笛倚晚晴_0

2018-04-22 15:40

#include <stdio.h>

int main()

{

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

    int num= (int)num;

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

    return 0;

}


写回答 关注

2回答

  • 有个看风景的人
    2018-06-21 20:18:04
    已采纳

    我也是新手

    来回答你的问题 自己刚思考过实验过就遇到同类型了


    1 名称不能相同 

    在定义变量时前面必须有“前缀”int char float double等 在定义时=后只能填写对应的值 但你要对应另一个变量的某部分时 =后要有(前缀)以及相应格式 如果()是代表整数的int char 则只能提取后面值的整数部分 如果()是代表小数的float和double 就会直接提取整个值(整数+小数)。

    如果=前代表小数=后为整数 则表现为整数并精确到小数 表现为 整数.00000 ,如果相反,则表现为整数。即以=前为限制格式 =后为提取内容 。当=前后两者相同时我想没必要如此

    2在表示变量的代码部分需要修改为=前的对应格式,毕竟赋值语气中=前命名了他的格式


    所以题主的不唯一解法

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

        int num= (int)nm;

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

        return 0;


    有个看风景的...

    居然被采纳了 是题主还是机器采纳呢 那我再补充一点便于理解的说法 =前代表盒子 =后为你的蛋糕 当盒子比蛋糕大(前小数后整数)不仅能装得下蛋糕还有剩余空间(整数.00000) 当盒子小(前整数后小数) 蛋糕只能被分开只装一部分且盒子满了(只取整数舍弃小数)

    2018-06-21 20:38:29

    共 1 条回复 >

  • Cuddless
    2018-04-22 15:52:32

    int可以转double,double不能转int?

    变量名称也不能相同吧?

    我也是新手

    qq_江船夜...

    emmmm.. 是的,变量名要换一个才行 那个double可以转int的 我也是刚刚才试出来呢

    2018-04-22 16:09:48

    共 1 条回复 >

C语言入门

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

926209 学习 · 20797 问题

查看课程

相似问题