| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 383 人关注过本帖
标题:问题来了啊,高手帮帮忙吧!!
只看楼主 加入收藏
maomaostyle
Rank: 1
等 级:新手上路
帖 子:45
专家分:9
注 册:2009-5-5
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
问题来了啊,高手帮帮忙吧!!
int i;
  for(i=1;i<=5;i++)
    switch(i%5)
     { case 0: printf("*");break;
       case 1: printf("#");break;
       default : printf("\n");
       case 2: printf("&");
     }
运行结果怎么是#&
              &
              &*
2009-11-18 09:31
d7d7
Rank: 4
等 级:业余侠客
帖 子:91
专家分:210
注 册:2008-9-29
收藏
得分:10 
五次循环:time 1: i=1; 1%5=1(这里是用i除5取余数); # break;
         time 2: i=2; 2%5=2;&;
         time 3: i=3; 3%5=3;执行 default "\n&"
         time 4: i=4; 4%5=4;同上;
         time 5: i=5; 5%5=0; &;
2009-11-18 09:43
lijm1989
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:珠海
等 级:贵宾
威 望:12
帖 子:675
专家分:2844
注 册:2009-10-14
收藏
得分:10 
LS time 5 的时候是 * 咧··失误了吧···

我再补充下吧,关于swith运行时候的问题,一般进入switch后,switch会根据括号里面的值进行判断,是否存在匹配的case,
有匹配的case则执行对应case后面的语句,如果没有,则执行default后面的语句,如果没有default,则这次的switch什么都不
执行。
    不过上面所说的都是以每个case后面都有break为前提下说的,看什么书都好,一般每种情况(即每个case)后面都会有break的,
但这并不是说case后面一定要跟break; (初学者最好养成加上break的习惯),有时候不加的话可以达到比较神奇的效果。
    这就谈到switch的运行机制了,上面讲到有匹配的case则执行对应case后面的语句,但如果该case后面没有break;它就会一直执行
在它以下的case,直到遇到一个break为止。因为必须有break去终止,不然不管下面的是case几,它只管去找case了。。。。
    LZ再想想,把它的原理搞懂的话,就很容易明白了····
                                                        以上属个人观点,如有不对的地方,请指正
2009-11-18 10:36
陈大师
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:231
专家分:1038
注 册:2009-11-4
收藏
得分:0 
以下是引用lijm1989在2009-11-18 10:36:39的发言:

LS time 5 的时候是 * 咧··失误了吧···

我再补充下吧,关于swith运行时候的问题,一般进入switch后,switch会根据括号里面的值进行判断,是否存在匹配的case,
有匹配的case则执行对应case后面的语句,如果没有 ...
顶楼上的,说的好详细啊。很有耐心。。。。。
对!初学者在使用switch是记得加上break···
2009-11-18 10:44
zqb7899
Rank: 4
等 级:业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
收藏
得分:0 
楼上讲得很详细
学习学习
2009-11-18 10:45
迷迷茫茫
Rank: 1
等 级:新手上路
帖 子:5
专家分:7
注 册:2009-11-18
收藏
得分:0 
呵呵
2009-11-18 12:53
快速回复:问题来了啊,高手帮帮忙吧!!
数据加载中...
 
   



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

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