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

为什么执行不了

为什么执行不了

C
咩咩爱编程 2015-01-06 16:31:29
#include <stdio.h>int main(){    double num = 2.5;          int num=(int)num;    printf("num%d\n", num);      return 0;}
查看完整描述

6 回答

?
_潇潇暮雨

TA贡献646条经验 获得超225个赞

变量num被重复定义了,另外格式化字符串里面应该写成:"%d\n",完整代码:

#include <stdio.h>
int main()
{
    double num = 2.5;     
     int a=(int)num;    //另外取一个变量名
    printf("%d\n", a);  
    return 0;
}


查看完整回答
2 反对 回复 2015-01-06
?
栩栩秋水

TA贡献1条经验 获得超0个赞

我当初有这个疑惑,但是看例题就明白了,你这里改成“int num1 = (int)num”就可以啦,原理是新的变量的形式(int)不会和旧的(double)占用同一个变量名而发生矛盾。

查看完整回答
反对 回复 2016-02-22
?
西伦

TA贡献2条经验 获得超0个赞

double了就不能再int了


查看完整回答
反对 回复 2016-02-17
?
Eve03

TA贡献1条经验 获得超0个赞

   int num=(int)num; 中出现了错误,num本来是一个double型的变量(名称),然而“int num”的意思是再定义一个 int型的变量名num 。变量名重复。

你要把double型转换为int型的话,直接printf("%d\n",(int)num);就好了。

查看完整回答
反对 回复 2016-01-29
?
lili5464645

TA贡献1条经验 获得超0个赞

#include <stdio.h>

int main()

{

    double num = 2.5;     

     int num1;

     num1=(int)num;

    printf("num%d\n", num1);  

    return 0;

}


查看完整回答
反对 回复 2016-01-27
?
DD_cc

TA贡献1条经验 获得超0个赞

除了上面说的重复定义,还有printf("num=%d\n",num);你少了=号

查看完整回答
反对 回复 2015-12-14
  • 6 回答
  • 0 关注
  • 2168 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号