00问答网
所有问题
void main(){int x = 023;printf("%d",x++);} 输出结果是什么 ? 谢谢
如题所述
举报该问题
推荐答案 推荐于2018-02-13
输出结果是:19
因为你定义的x(int x=023;)是一个
8进制
数,该8进制对应的10进制为:19
输出是以(%d)10进制输出的,x++是先使用x的值(即
表达式
x++的值)为19,然后让x加1变成20,所以最后结果是19。
有疑问请追问。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://00.wendadaohang.com/zd/ZTjZ0DDTT.html
其他回答
第1个回答 2012-10-10
023 是八进制的19, 输出结果是19 , 后边的++ 识别为字符,不做运算。。详看 printf函数
http://baike.baidu.com/view/410546.htm
第2个回答 2012-10-10
像++,--这种操作要理解x++是先使用x然后再++,而++x是先让i+1再使用
第3个回答 2012-10-10
19
第4个回答 2012-10-10
编译通过等于19,不知道怎么算的
1
2
下一页
相似回答
在C语言中有一道题目:
x=023(
八进制)请问
x++是
多少
?
请解释一下
答:
x++就是两条:
x=x
+1=024;并且
x++=023(
八进制
),023
的十进制表示就是19.++x就是两条:x=x+1=024;并且++x=024(八进制),024的十进制表示就是20.++就是这样用的!
c语言中int a
=
2
,printf(
"
%d%d%d
",--a,a
++,
--a
)输出结果是什么
...
答:
例如:首先要区别x++和++
x(
--同理)。x++是先引用再增值,++
x是
先增值增引用。例如:
int
x,a,b
;x=
0;a
=x++;
//a=0;a
=x++是
先把x值给a,,操作完再+1,即先做a
=x,
然后x再+1 b
=x;
//b=1 int x,a,b;x=0;a=++x; //a=1;++x是先增值再用,即先做...
...
main() {int
x=023,
y=5,z=2+(y+=y
++,x
+8,
++x); printf(
"
%d
%d\n...
答:
023
代表8进制数,等于十进制的19 (y+=y
++,x
+8,
++x)
里的是逗号表达式,只返回最右边的表达式的结果,
++x(
结果为1+19
)x
+8的
结果是
个临时值,没有改变任何变量的值,y的值你也没有用来输出.
...int
x=023,
y=5,z=2+(y+=y
++,x
+8,
++x);printf(
“
%d,%d
”,x,z...
答:
20,22
大家正在搜
相关问题
下面程序的输出是____ main(){ int x=023...
c程序中main() { int x=023;printf(...
求输出结果main(){int x=023;printf("...
void main() {int y=3,x=3; x>>=...
以下程序输出的结果是 main() {int x; x=-3...
#include<stdio.h> void main() ...
下面程序的输出结果是() #include<stdio.h>...
请问以下程序运行后的输出结果是 #include<stdio...