搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ [求助]不理解~~
标题:
[求助]不理解~~
只看楼主
fantasyop
等 级:
新手上路
帖 子:71
专家分:0
注 册:2005-2-25
楼主
问题点数:0 回复次数:8
[求助]不理解~~
mian
{
int x=4;
if(x++>5)
print("%d",x);
esle
print("%d",x--);
我不懂为什么答案是5,
(x++>5)x不应该是4吗?为什么是5
2005-03-17 05:29
271391233
等 级:
新手上路
帖 子:174
专家分:0
注 册:2005-2-24
第
2
楼
得分:0
你应该多理解一下自增1和自减1
不过不好意思我也是初学者
不过我发现你好想少了一个 \n
不知道是不是
坚持就是胜利>>静心,静思
2005-03-17 06:03
271391233
等 级:
新手上路
帖 子:174
专家分:0
注 册:2005-2-24
第
3
楼
得分:0
(x++>5)x应该是5啊
自增1 就是x+1再和5做比较啊不过好想是相等哦
坚持就是胜利>>静心,静思
2005-03-17 06:06
地瓜
等 级:
新手上路
帖 子:8
专家分:0
注 册:2005-3-14
第
4
楼
得分:0
也是啊~!?
2005-03-17 09:22
lyd198261
等 级:
新手上路
帖 子:3
专家分:0
注 册:2005-3-16
第
5
楼
得分:0
因为(x++>5)意为将x自加1后与5比较大小,故x值变为5,又此时x不大于5,所以转入else 语句,又x--因为后面不涉及到计算,所以x--其实任为现在的x值,即为5
2005-03-17 09:48
lyd198261
等 级:
新手上路
帖 子:3
专家分:0
注 册:2005-3-16
第
6
楼
得分:0
可以每一步运算完后,把当前x值printf出来,好便于理解。
2005-03-17 09:50
shangmin
等 级:
新手上路
帖 子:13
专家分:0
注 册:2005-3-17
第
7
楼
得分:0
你好。
X++与X--都是先使用x的值,然后再对 x的值进行变化。
所以执行
if(x++>5)
是,x的值为x, 然后便成5。printf("%d",x--)也是一样。
2005-03-17 09:57
poppylx
等 级:
新手上路
帖 子:367
专家分:0
注 册:2004-9-27
第
8
楼
得分:0
int x = 4 ;
if( x ++ > 5 )
可以这样理解
int x = 4;
if ( x > 5) and x ++ /// x 先与5比较 后再加一
print ( "% d " , x ) // 加一后 x=5
而 if (++ x > 5) 则 这样理解
x ++;
if (x>5) // x 先加一 再与5比较
print ( ........)
动于心而静如水
2005-03-17 10:19
fantasyop
等 级:
新手上路
帖 子:71
专家分:0
注 册:2005-2-25
第
9
楼
得分:0
i++:在使用i后,使i的值加1。
这里的使用包括那些运算符(我以前还以为比较不算使用的,郁闷)
看来C的路还很遥远
[此贴子已经被作者于2005-3-17 15:59:36编辑过]
今年俺是大菜鸟,明年俺希望是小菜鸟,......
2005-03-17 15:53
9
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-13449-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.206687 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved