求教一c语言题目,while那条看不懂

[复制链接]
查看11 | 回复5 | 2012-2-2 09:54:50 | 显示全部楼层 |阅读模式
非0就是真,负也为真!若x=1时候 while(!(--x)) 会先做--操作也就变为 while(!(0))为真 当x=-2时候while(!(--x)) 会先做--操作也就变为 while(!(-3))为假循环结束...
回复

使用道具 举报

千问 | 2012-2-2 09:54:50 | 显示全部楼层
do while先执行,后判断是否继续执行循环,而!(--x)就是需要判断的条件,即是否继续进行循环,只要当x=0,即!0则为真时,进行循环,否则停止循环...
回复

使用道具 举报

千问 | 2012-2-2 09:54:50 | 显示全部楼层
意思就是只有x==1才执行。因为只有(--x)为0时,while(!(--x))才为真,才执行;否则,(--x)不为0时,while语句为假不执行。...
回复

使用道具 举报

千问 | 2012-2-2 09:54:50 | 显示全部楼层
while 里面是控制循环结束的,--x是先减1,再判断,和x--不同...
回复

使用道具 举报

千问 | 2012-2-2 09:54:50 | 显示全部楼层
--x就是先把X-1 然后再判断X 不为0...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行