1. 问题
请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
2. 实现思路
- 思路一:嵌套if-else语句实现 
  - 首先接收用户输入的第一个字母,使用if-else语句进行判断。如果输入的是M,则直接判断为星期一(Monday);如果是T,由于星期二(Tuesday)和星期四(Thursday)首字母都是T,所以需要再次提示用户输入第二个字母,根据第二个字母进一步判断是星期二还是星期四,比如第二个字母是u则为星期二,是h则为星期四;同理,若输入的是W,则为星期三(Wednesday),若输入的是F,则为星期五(Friday),若输入的是S,因为星期六(Saturday)和星期日(Sunday)首字母都是S,同样需要再输入第二个字母来区分,比如第二个字母是a则为星期六,是u则为星期日。
 
- 首先接收用户输入的第一个字母,使用
- 思路二:switch语句结合if语句实现- 先接收用户输入的第一个字母,用switch语句对其进行分类判断。当输入的字母为M、W、F时,可以直接确定对应的星期几。而对于输入T或S的情况,由于存在两种可能的星期与之对应,所以在相应的case分支里,再提示用户输入第二个字母,然后通过if语句根据第二个字母来准确判断到底是哪个具体的星期。
 
- 先接收用户输入的第一个字母,用
3. 实例代码
实现方式一:嵌套if-else语句实现
#include <stdio.h>
#include <ctype.h>
int main() {
    char firstLetter;
    char secondLetter;
    printf("请输入星期几的第一个字母(大写):");
    scanf(" %c", &firstLetter);
    firstLetter = toupper(firstLetter);
    if (firstLetter == 'M') {
        printf("是星期一(Monday)。\n");
    } else if (firstLetter == 'T') {
        printf("请输入第二个字母(大写):");
        scanf(" %c", &secondLetter);
        secondLetter = toupper(secondLetter);
        if (secondLetter == 'U') {
            printf("是星期二(Tuesday)。\n");
        } else if (secondLetter == 'H') {
            printf("是星期四(Thursday)。\n");
        } else {
            printf("输入的字母不符合要求。\n");
        }
    } else if (firstLetter == 'W') {
        printf("是星期三(Wednesday)。\n");
    } else if (firstLetter == 'F') {
        printf("是星期五(Friday)。\n");
    } else if (firstLetter == 'S') {
        printf("请输入第二个字母(大写):");
        scanf(" %c", &secondLetter);
        secondLetter = toupper(secondLetter);
        if (secondLetter == 'A') {
            printf("是星期六(Saturday)。\n");
        } else if (secondLetter == 'U') {
            printf("是星期日(Sunday)。\n");
        } else {
            printf("输入的字母不符合要求。\n");
        }
    } else {
        printf("输入的字母不符合要求。\n");
    }
    return 0;
}
实现方式二:switch语句结合if语句实现
#include <stdio.h>
#include <ctype.h>
int main() {
    char firstLetter;
    char secondLetter;
    printf("请输入星期几的第一个字母(大写):");
    scanf(" %c", &firstLetter);
    firstLetter = toupper(firstLetter);
    switch (firstLetter) {
    case 'M':
        printf("是星期一(Monday)。\n");
        break;
    case 'T':
        printf("请输入第二个字母(大写):");
        scanf(" %c", &secondLetter);
        secondLetter = toupper(secondLetter);
        if (secondLetter == 'U') {
            printf("是星期二(Tuesday)。\n");
        } else if (secondLetter == 'H') {
            printf("是星期四(Thursday)。\n");
        } else {
            printf("输入的字母不符合要求。\n");
        }
        break;
    case 'W':
        printf("是星期三(Wednesday)。\n");
        break;
    case 'F':
        printf("是星期五(Friday)。\n");
        break;
    case 'S':
        printf("请输入第二个字母(大写):");
        scanf(" %c", &secondLetter);
        secondLetter = toupper(secondLetter);
        if (secondLetter == 'A') {
            printf("是星期六(Saturday)。\n");
        } else if (secondLetter == 'U') {
            printf("是星期日(Sunday)。\n");
        } else {
            printf("输入的字母不符合要求。\n");
        }
        break;
    default:
        printf("输入的字母不符合要求。\n");
    }
    return 0;
}
4. 输出结果

 
 



















