有以下程序 main(){ int i=10,j=1; printf("%d,%d\n",i--,++j); },执行后输出结果是( )。

帮帮忙啊!

10,2

--写后面 先取了i的值再对i+1
同理++写前面,先+1再取j的值

显示的是10,2

最后i的值是9,j的值是2
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-12
10,2
第2个回答  2011-05-12
10,2
第3个回答  2011-05-12
I=10,J=2

main() { int i=10,j=1; printf("%d,%d\\n",i-- ,++j); }执行后输出结果...
10,2 i--是先使用后自减,++j是先自加后使用。满意请给最佳

有以下程序 main(){ int i=10,j=1; printf("%d,%d\\n",i--,++j); }...
最后i的值是9,j的值是2

main() { int i=10,j=1; printf("%d,%d\\n",i--,++j);}结果是多少
所以这里的i--, 先取值, 值为10.++j, 先自加j=2, 再取值.于是输出是10,2

...main( ) { int i=010,j=10; printf("%d,%d\\n",i++,j--); }_百度...
比如我设z=i++;那么这句z=i++;就相当于两句:z=i;i=i+1;设i原来为8那么运行后z=8,i=9 如果我设x=++i;那么就相当于i=i+1;x=i;设i原值为8那么运行后i=9,z=9

...main() { int i=010 , j = 10; printf("%d,%d\\n",+ +i , j...
输出结果是:9 10 原因是:010是8进制,换算成十进制就是8,也就是i的值为8,++i后,i的值为9,所以输出9。j--会先输出j的值,然后在做--操作,所以输出10.

...main() { int i=010,j=10; printf("%d,%d\\n",++i,j--);
结果 9,10 0开头表示八进制 i=010 转换成十进制是 8 ++i是先让i的值加1也就是9,然后再返回也就是10 j--是先返回j的值10,然后再减1也就是9.选B

...main() { int i,j; i=10; printf("%d,%d,%d\\n",i--,j=i++,j=++...
逗号分隔,从右向左计算,顺序如下 j=++i;i先加1,i=11;j=11;j=i++;i先赋值11;j=11;i--;i先赋值11;i++与i--在语句结束后改变。

...main() { int i=010,j=10; printf("%d,%d\\n",++i,j--); }_百度知...
i是9吧!不是10

...main() { int i=010,j=10; printf("%d,%d\\n",i++,j--); }_百度知...
关键是这个 int i=010 最高位的0表示这个数是以八进制来表示的,你看,八进制的10,不就是10进制的8么。就这么简单 可以参考一下int i=0x10,这个就是十六进制的,换成十进制就是 16

设有int I=10,j=10;则printf("%d,%d\\n",++I,j--)的输出是
设有int I=10,j=10;则printf("%d,%d\\n",++I,j--)的输出是 11,10 若是printf("%d,%d\\n",i++,--j)结果是 10,9 你只要记住 自增或自减符号在前面就先++或--再使用变量,在后面就是先使用变量再++或--

相似回答