鱼C论坛

 找回密码
 立即注册
查看: 1442|回复: 12

是在看不懂!

[复制链接]
发表于 2015-7-29 13:59:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>

main()
{
        char c;
        int x=0,y=1,z=0;
        do
        {
                switch( c = getchar() )
                {
                        case 'i': case 'I':
                        case 'c': case 'C':
                        case 'o': case 'O': x++;
                        default: y++; z++;
                }
        }while( c!='m' );
        printf("x=%d y=%d z=%d", x, y, z);
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-7-29 16:23:59 | 显示全部楼层
想问什么问题呢,哪个地方看不懂?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-29 16:24:38 | 显示全部楼层
你哪不懂可以 讲出来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-29 17:15:54 | 显示全部楼层
让程序跑一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-29 18:00:02 | 显示全部楼层
#include <stdio.h>
#define  DEBUG1 printf("1.x=%d;y=%d;z=%d;\n",x,y,z)
#define  DEBUG2 printf("2.x=%d;y=%d;z=%d;\n",x,y,z)
/*IED&Compile:C-Free 5.0; 
 *说明:纯属个人理解,忽悠纯属个人业余爱好 ;
 */ 
int main(){
        char ch;
        int x=0,y=1,z=0; 
        
        do{
                printf("接受输入字符:"); 
                scanf("%c",&ch);
                (void)getchar();/*这里我不太清楚,以前也遇到过,
                                   *存在于缓冲区的换行符被送到了下个接受 口中;
                                   *你可以把这个getchar()注释掉试试看 
                                   *但是我输入1,而后继续输入i,尼玛,然后我就艹了
                                   *...这个bug,找大神吧。。。 
                           */ 
                 switch(ch){
                        case 'i': case 'I':
                         case 'c': case 'C':
                        case 'o': case 'O': x++;
                                   default: y++; z++; 
            /*没有break;肯定是一级一级的判断,我想问的是存在case嵌套这种说法吗? 
          *不过,没有break;不管是case 'i':...; 还是case 'i': case 'I'..都是一样的 
          *如果输入的数据和任意case相同的就会实现x++和y++,z++;
          *如果没有和任意case一样的,就只实现y++,z++(dafault); 
          */                        
                                   DEBUG1;
                                printf("任意键继续...");
                                   (void)getchar();
                     }
       DEBUG2;
           printf("任意键继续...");
       (void)getchar();
       }while( ch!='m' );
       
    printf("x=%d y=%d z=%d", x, y, z);
    getchar();
return 0;
}
//1小时之后,我感觉我应该发布新的问题,我也遇到问题了。。。。。 

时间:2013年7月29日18:02:38;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-7-30 15:29:51 | 显示全部楼层
364904690 发表于 2015-7-29 16:23
想问什么问题呢,哪个地方看不懂?

答案是6,15,14
这答案怎么来的?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-7-30 15:30:31 | 显示全部楼层
364904690 发表于 2015-7-29 16:23
想问什么问题呢,哪个地方看不懂?

答案是6,15,14
这答案怎么来的?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-7-30 15:37:00 | 显示全部楼层
lark 发表于 2015-7-29 18:00
时间:2013年7月29日18:02:38;

我彻底看晕了!大神
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-7-30 15:37:51 | 显示全部楼层
小人 发表于 2015-7-29 16:24
你哪不懂可以 讲出来

答案是6,15,14
这答案怎么来的?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-30 16:13:04 | 显示全部楼层
这个要看你输入的是些什么值。才能算出答案,你仔细看一下5楼的。讲得很细了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-30 16:18:46 | 显示全部楼层
有些东西没有学到,需要慢慢消化
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-30 16:43:52 | 显示全部楼层
小阿妞 发表于 2015-7-30 15:37
我彻底看晕了!大神

因为我提前晕了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-8-4 14:41:08 | 显示全部楼层
这个很好理解呀,一开始就让你输入一字母,然后判断这个字母是不是 'i','I','o','O','c','C'这几个中的一个,如果是的话就x增加1,如果不是的话,就y和z增加1,知道你输入的的c等于'm'就结束了。输出什么是要看你输入了什么,是一个不固定的值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 05:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表