用c语言判断输入是否为一周七天首字母

用c语言判断输入是否为一周七天首字母

问题描述:

怎么用程序判断输入是否正确呢,并且在错误时候输出error

 #include <stdio.h>
int main()
{
   char ch;
    printf("请输入第一个字母:");
    scanf("%c", &ch);
    if (ch=='m') printf("monday\n");
    if (ch=='t')
    {
        getchar();
        printf("请输入第二个字母:");
        scanf("%c", &ch);
        if(ch=='u')printf("tuesday\n");
        else if(ch=='h')printf("thursday\n");
        else
        printf("error");
    }    if (ch == 'w')printf("wednesday\n");
    if (ch == 'f')printf("friday\n");

    if (ch == 's')
    {
        getchar();
        printf("请输入第二个字母:");
        scanf("%c", &ch);
        if (ch == 'a')printf("saturday\n");
        else if printf("sunday\n");
else printf("error");
    }
    else
        printf("error");
}

供参考:

#include<stdio.h>
int main(void)
{
    char ch;
    puts("请输入第一个字母:");
    ch = getchar();
    getchar();
    switch (ch) {
                case 'm':puts("monday");
                         break;
                case 't':puts("请输入第二个字母:");
                         ch = getchar();
                         if (ch == 'u') puts("tuesday");
                         else
                         if (ch == 'h') puts("thursday");
                         else           puts("error");
                         break;
                case 'w':puts("wednsday");
                         break;
                case 'f':puts("friday");
                         break;
                case 's':puts("请输入第二个字母:");
                         ch = getchar();
                         if (ch == 'a') puts("saturday");
                         else
                         if (ch == 'u') puts("sunday");
                         else           puts("error");
                         break;
                default :puts("error");
                         break;
    }
    return 0;
}