鱼C论坛

 找回密码
 立即注册
查看: 1517|回复: 6

[已解决]小白求助

[复制链接]
发表于 2020-2-14 22:08:08 | 显示全部楼层 |阅读模式

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

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

x
输入星期几的第一个字母来判断是星期几,如果第一个字母一样,则输入第二个字母判断,下面是书上标准答案
一直看不懂第七行,判断Y的意义在哪,去掉这行,发现程序也可以运行,希望各位帮忙解答下
#include <stdio.h>
void main ()
{        
        char letter;
        printf("please input this first letter of someday\n");
        letter=getchar();
        if(letter!='Y')//当字母为Y时不执行后面的switch语句
        {
                switch(letter)
                {
                case 'S':
                        {
                                printf("please input second letter \n");
                                getchar();
                                if((letter=getchar())=='a')
                                        printf("saturday\n");
                                else  if (letter=='u')
                                        printf("sunday\n");
                                else printf("data error\n");
                                break;
                        }
                case 'F':printf("friday\n");break;
                case 'M': printf("monday\n");break;
                case 'T':
                        {
                                printf("please input second letter \n");
                                getchar();
                                if((letter=getchar())=='u')
                                        printf("tuesday\n");
                                else if (letter=='h')
                                        printf("thursday\n");
                                else printf ("data error\n");
                                break;
                        }
                case 'W':printf ("wednesday\n");break;
                default:printf("data error\n");
                }
        }
}


最佳答案
2020-2-14 23:33:47
char letter;
        printf("please input the first letter of someday\n");
        while ((letter = getchar()) != 'y')//当所按字母为Y时结束
我搜索了,发现别的题目里面给出的答案,我觉得这么理解就对了,y只是一个不运行的代码,你改成什么N什么都可以,删掉并不影响
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-2-14 23:33:47 | 显示全部楼层    本楼为最佳答案   
char letter;
        printf("please input the first letter of someday\n");
        while ((letter = getchar()) != 'y')//当所按字母为Y时结束
我搜索了,发现别的题目里面给出的答案,我觉得这么理解就对了,y只是一个不运行的代码,你改成什么N什么都可以,删掉并不影响
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-15 10:52:17 From FishC Mobile | 显示全部楼层
这个if语句好像不必要,删了只留下switch应该也可以运行。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-15 13:22:36 | 显示全部楼层
4goodworld 发表于 2020-2-14 23:33
我搜索了,发现别的题目里面给出的答案,我觉得这么理解就对了,y只是一个不运行的代码,你改成什么N什么 ...

删掉了也可以运行,但是我不懂,放在这里有什么意义
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-15 13:51:34 | 显示全部楼层
张世来4610484 发表于 2020-2-15 13:22
删掉了也可以运行,但是我不懂,放在这里有什么意义

晕,如果题目说,当输入Y的时候表示重新输入,能理解了吗?
至于为啥是Y,其实我也不知道,我感觉N也行,不信,你试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-15 13:57:28 | 显示全部楼层
估计是原来的代码没写全,本意是如果输入y就直接退出。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-15 16:44:46 | 显示全部楼层
'y'是每个星期一,二,三,四,五,六,七的最后一个字母
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-16 05:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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