鱼C论坛

 找回密码
 立即注册
查看: 1575|回复: 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);
}
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2015-7-29 16:23:59 | 显示全部楼层
想问什么问题呢,哪个地方看不懂?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-29 16:24:38 | 显示全部楼层
你哪不懂可以 讲出来
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-29 17:15:54 | 显示全部楼层
让程序跑一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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


时间:2013年7月29日18:02:38;
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

答案是6,15,14
这答案怎么来的?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

答案是6,15,14
这答案怎么来的?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

我彻底看晕了!大神
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

答案是6,15,14
这答案怎么来的?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-30 16:13:04 | 显示全部楼层
这个要看你输入的是些什么值。才能算出答案,你仔细看一下5楼的。讲得很细了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-30 16:18:46 | 显示全部楼层
有些东西没有学到,需要慢慢消化
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

因为我提前晕了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-20 14:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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