为了账号安全,请及时绑定邮箱和手机立即绑定

2-9有疑问

#include <stdio.h>

int main()

{

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

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

    return 0;

}

这段代码是正确的。

但是下面这段

#include <stdio.h>

int main()

{

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

    int num =(int) num

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

    return 0;

}

是错的。

所以我有些问题:下面这段是我看过教程之后写出来的,但是是错的。

但我又不知道错在哪,我有几个猜测:

1、num这个变量名我用了两次,整型一次,双精度实数型一次。所以我想是不是因为变量名混乱所以报错,但是我学了一下其他人,他们把要输出的量定义成num1。但是我还是错了。

2、我看不太懂教程里说的(数据类型)(表达式)这个形式

表达式要加括号,但是在例子中的temptwo没加括号,是因为字符不需要加括号吗?还是只有需要计算的公式才需要加括号?

求大佬耐心解答!!!

正在回答

4 回答

改成如下试试

int num2 =(int) num

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


0 回复 有任何疑惑可以回复我~

第五行忘加;

0 回复 有任何疑惑可以回复我~
猜测一对的,但num1是这样改
#include <stdio.h>
int main()
{    
    double num = 2.5;//定义浮点型变量num并赋值为2.5    
    int num1 =(int) num;    
    printf("num的整数部分是%d\n",num1); //(int)num的整数给到了num1     
    return 0;
}

或者改成(不用另外设一个中间变量名)

#include <stdio.h>
int main()
{    
    double num = 2.5;//定义浮点型变量num并赋值为2.5       
    printf("num的整数部分是%d\n",(int)num);      
    return 0;
}
0 回复 有任何疑惑可以回复我~
猜测一对的,但num1是这样改
#include <stdio.h>
int main()
{    
    double num = 2.5;//定义浮点型变量num并赋值为2.5    
    int num1 =(int) num;    
    printf("num的整数部分是%d\n",num1); //(int)num的整数给到了num1     
    return 0;
}

或者改成(不用另外设一个中间变量名)

#include <stdio.h>
int main()
{    
    double num = 2.5;//定义浮点型变量num并赋值为2.5       
    printf("num的整数部分是%d\n",(int)num);      
    return 0;
}
0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926212    人
  • 解答问题       20797    个

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

进入课程

2-9有疑问

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信