| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 671 人关注过本帖
标题:请求老手两道简单的循环问题~
只看楼主 加入收藏
wcghappy
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-2-25
收藏
 问题点数:0 回复次数:2 
请求老手两道简单的循环问题~
请把下面两道程序的流程说明一下,自己想了半天都不知道怎么得出来的结果~
(1)#include <stdio.h>
main()
{
int x=2;
while(x--);
printf("%d\n",x);
}
这道题的答案是-1.可是怎么得的呢?其中的循环体是怎么工作的?
(2)int i=0,sum=1;
do {sum+=i++;}
while(i<5);
printf("%d\n",sum);
}

这道题的答案是11.
其中的循环体是怎么工作的呢?


谢谢~~
搜索更多相关主题的帖子: 老手 请求 
2008-02-26 15:13
qfyzy
Rank: 2
等 级:论坛游民
威 望:1
帖 子:380
专家分:86
注 册:2008-2-17
收藏
得分:0 
第一:while后面有一个分号,while(x--)自己做循环,当x=0时,条件为假调处循环,但由于x--是先用x的值再减一,所以x=-1;
第二:sum+=i++;  就是 sum = sum + ( i++ );
由于是do-while先做在判断。所以到i=5停止。
第一次:sum = 1 +1 =2 ;
第二次:sum= 2 + 2 = 4;
第三次:sum=4+3=7;
第四次:sum=7+4=11;
此时,i=5所以停止

当对C的经验增加时,它会显的很好用.----Dennis M Ritche如是说
2008-02-26 15:22
wcghappy
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-2-25
收藏
得分:0 
谢谢~!!
2008-02-26 15:28
快速回复:请求老手两道简单的循环问题~
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017727 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved