课程
/后端开发
/C
/C语言入门
有进行代码我没的修改,结果为什么不是2而这么大??
2019-09-01
源自:C语言入门 2-9
正在回答
printf链接的变量,其数据类型与输出格式不匹配.
那么如果你想要用%d格式输出,相对应的就应该是int一类的整型变量.
而在之前的定义中,num被定义为一个double型的浮点型变量,不是整数,
所以在输出之时,不应该链接num,而是对num进行的强制类型转换,
如果不好理解,可以依照左栏的例题中,定义一个新的int型变量Num,即int Num=(int)num,
在输出的时候可以链接你定义的int变量Num.
同样,二楼所链接的(int)num的值,就是我们这里是Num的值,
转换后不会改变原数据的类型及变量值,只在本次运算中临时性转换,所以是printf("num的整数部分是%d\n,(int)num")
他们好像都没有达到关键,题主问的是为什么浮点型数据num2.5用%d形式输出会是图中的那个结果,虽然我是个小白,但我认真看了,然后.........同问
源代码double型与%d冲突。改成int型or改成%f
printf("num的整数部分是%d\n,(int)num")
int 型
举报
C语言入门视频教程,带你进入编程世界的必修课-C语言
3 回答运行结果为问号,修改代码也没用。
2 回答为什么我代码运行的结果不是y,结果是y/n
3 回答为什么我运行的没有结果
1 回答我这个代码结果是2,怎么回事?
1 回答这是我代码,为什么结果对,但过不了呢