跟C语言循环有关的问题~~~大侠指教~

在C语言里有三种循环体do-whilewhilefor其中有几种种我不太懂1:加分号的while语句intk=1;while(k++<10);求变量K的值这个while语... 在C语言里有三种循环体 do-while while for
其中有几种种我不太懂
1:加分号的while语句
int k=1;while(k++<10);求变量K的值
这个while语句后面加分号怎么理解呢? 前面有没有 do

2:加分号的for语句
for(a=0,b=0;a<3&&b!=3;a++);
求循环次数

还有一种就是完全是空的for语句
#include“stdio.h”
main()
{int i=0,j=10,k=2,s=0;
for(;;)
{i+=k;
if(i>j)
{printf("%d\n",s);
break;
}
s+=i;}
}
这里的for又该怎样看呢?
}
求大侠解疑 谢谢!
展开
 我来答
hhdxtxh
2012-01-03 · TA获得超过306个赞
知道答主
回答量:25
采纳率:0%
帮助的人:10万
展开全部
1,在c语言中分号代表一个语句的结束,这里while语句后面直接就加分号,表示循环体为空,只是不停地在进行自加。所以当满足条件的时候,即k=11的时候,就跳出循环了。这里还要注意k++与++k的区别哦。
2,这里的循环次数应该是3次。原因:首先b的初始值为0,而在整个for循环中,没有对b 进行任何操作,所以b!=3恒成立。只要考虑a<3?所以这题与这个for(a=0,b=0;a<3;a++);等价了。这个就简单了吧。另外这里要注意for循环后面直接跟了个分号,所以循环体为空哦。
3,首先你要理解for 循环的具体意义。括号里面的第2个语句应该是做判断用的。如上题的a<3,可是,里面是空的话,就说明没有任何条件,这里我们默认它恒成立。所以它应该一直在循环,是个死循环。而且这样的代码不能放在机器上去执行哦。可能会造成机子死机的哦。建议你在去书上好好看看for循环的相关语法知识,这一块很重要的,对于学c 语言。希望你能弄懂这个问题哦。
还有不懂的可以追问哦。
sun_siliang
2012-01-03 · TA获得超过2.6万个赞
知道大有可为答主
回答量:9913
采纳率:100%
帮助的人:4122万
展开全部
1:
int k=1;while(k++<10);//循环结束后,K的值为:11。
while后面的分号表示循环体为空。

2:
for(a=0,b=0;a<3&&b!=3;a++);
循环次数为:3
a=0,1,2时执行空的循环体。

3:
for(;;)
//等价于
while(1)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
alfredtofu
2012-01-03
知道答主
回答量:22
采纳率:0%
帮助的人:8.6万
展开全部
1.分号代表空语句,就是什么都不敢,只是做循环判断,跳出循环的时候k为11,k++是先使用k的值然后再自加。++k则是k先自加再使用k的值
2.分号代表空语句,就是什么都不敢,只是做循环判断,循环次数3,这里b永远不等于3,所以b!=3条件永远未真,只需要判断a<3即可。
3.代表一个死循环,一般在循环体内跳出循环。

建议楼主去看看for循环的语法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Gavin_cambridg
2012-01-03
知道答主
回答量:9
采纳率:0%
帮助的人:3.9万
展开全部
第一题相当于:
int k=1;
while(k<10)
{
k++;
}

第二题
循环次数是3

第三题
for 可以理解成while(1)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cdetective
2012-01-03 · 超过24用户采纳过TA的回答
知道答主
回答量:100
采纳率:100%
帮助的人:34.9万
展开全部
其实还有goto(),循环的鼻祖。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式