标题:for语句的问题,纠结中。。。
取消只看楼主
方云龙
Rank: 1
等 级:新手上路
帖 子:40
专家分:7
注 册:2007-5-11
 问题点数:0 回复次数:1 
for语句的问题,纠结中。。。
在for语句中有这样的一段代码,请教一下
#include<stdio.h>
void main()
{
  int k;
  for(k=1;k<5;k=k+1)
  {if(k==3)bredk;}
  printf("******\n");
}
这种情况上机试是打一行的,
但把中间那个大括号放下一行,却是打两行的,如下
#include<stdio.h>
void main()
{
  int k;
  for(k=1;k<5;k=k+1)
  {if(k==3)bredk;
  printf("******\n");}
}

为什么?????
个人思路:当K=1时,执行K=K+1,也就是K=2了,不等于3,打印一行
到回循环,K=2,执行K=K+1,也就是K=3了,当K=3时,跳出循环体,不打印,
来来去去也只打印一行,为什么上面第二个代码会是打两行???
搜索更多相关主题的帖子: 打印 include 大括号 
2012-08-21 23:09
方云龙
Rank: 1
等 级:新手上路
帖 子:40
专家分:7
注 册:2007-5-11
得分:0 
回复 12楼 jack_xgp
谢谢12楼的解答,现在清楚了,
我原来理解是K=1时,K<5成立,会执行K=K+1
看来真正的是,K=1时,K<5成立,直接执行下面的语句,循环一次后,才会执行K=K+1

天若有情天亦老,月若无情月常圆
2012-08-22 20:19



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-379896-1-1.html




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

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