| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 697 人关注过本帖
标题:这个程序中a加了几次啊?求解。
只看楼主 加入收藏
C语言张媛
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-9-4
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
这个程序中a加了几次啊?求解。
void main()
{
  int j=0,k=0,a=0;  
  while(j<2)
  {
    j=j+1;
    a=a+1;
    k=0;
   }
 while(k<=3)
  {
   k=k+1;
   if(k%2!=0)
       continue;
    a=a+1;
  }
 a=a+1;
 printf("%d\n",a);
}  
这个程序中a加了几次啊?
搜索更多相关主题的帖子: void 
2012-09-06 19:21
a7882669
Rank: 4
等 级:业余侠客
帖 子:192
专家分:290
注 册:2012-4-17
收藏
得分:1 
5。。
2012-09-06 19:54
C语言张媛
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-9-4
收藏
得分:0 
回复 2楼 a7882669
为什么啊?
2012-09-06 20:17
magicpaul007
Rank: 2
等 级:论坛游民
帖 子:7
专家分:58
注 册:2012-9-6
收藏
得分:10 
5次还是很好理解,首先看第一个while循环:
while(j<2)
{
    j=j+1;
    a=a+1;
    k=0;
}
可以简单的看出,循环中j从0加到1,因为要小于2,所以循环执行了两次,这个时候也就是a加了两次,此时a=2,k=0(后面要用到k)。
下面继续看第二个while循环:
while(k<=3)
{
   k=k+1;
   if(k%2!=0)
       continue;
    a=a+1;
}
k初始值是0最后要小于等于3,也就是执行了四次循环,k的值分别为0、1、2、3,下面具体分析每次执行过程。
k=0,执行k=k+1,此时k=1,然后判断能否被2整除,如果不能,跳过a=a+1直接从while入口处开始执行。此时k=1,显然符合k%2!=0的条件,所以没有执行a=a+1;
k=1,执行k=k+1,此时k=2,能被2整除,不满足k%2!=0,不会执行if里面的语句,所以执行a=a+1,这样a加了第三次,此时a=3;
k=2,执行k=k+1,此时k=3,不能被2整除,满足k%2!=0的条件,所以没有执行a=a+1,直接跳到while入口;
k=3,执行k=k+1,此时k=4,能被2整除,不满足k%2!=0,不会执行if里面的语句,所以执行a=a+1,这样a加了第四次,此时a=4。
最后看while下面有一句a=a+1,所以执行了第五次,此时a=5.
最后,建议仔细看看循环的执行过程,以及if判断条件和continue和break的用法。
2012-09-06 21:10
震中地带
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:171
专家分:359
注 册:2012-3-26
收藏
得分:2 
我在想楼主在想知道什么呢,,,运行结果为5,而且a每次都加1,肯定是加了五次啊
2012-09-06 22:17
LittleCer
Rank: 2
来 自:一个小村庄
等 级:论坛游民
帖 子:19
专家分:15
注 册:2012-9-1
收藏
得分:2 
就是5次,第一个while那里2次,第二个while那里2次,最后a=a+1有1次,一共5次.
详情看四楼
2012-09-06 22:52
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:1 
4楼详细。
2012-09-06 23:09
夜叶
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:104
专家分:189
注 册:2011-5-7
收藏
得分:1 
5次...
2012-09-06 23:19
iFreeBSD
Rank: 4
等 级:业余侠客
威 望:4
帖 子:474
专家分:236
注 册:2007-11-5
收藏
得分:3 
这种代码拿了有设那么用啊???要想知道,挂上调试器跑一下不就结了。这种学习态度怎么学好?

without further ado, let’s get started
2012-09-06 23:20
C语言张媛
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-9-4
收藏
得分:0 
回复 9楼 iFreeBSD
初学者。。我一定端正态度。
2012-09-07 11:46
快速回复:这个程序中a加了几次啊?求解。
数据加载中...
 
   



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

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