题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。

程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。

C语言实现:

#include<stdio.h>
 
int main()
{
    char i,j;
    printf("请输入第一个字母:\n");
    scanf("%c",&i);
    getchar();//scanf("%c",&j);的问题,第二次是读入的一个换行符,而不是输入的字符,因此需要加一个getchar() 吃掉换行符
    switch(i)
    {
        case 'm':
            printf("monday\n");
            break;
        case 'w':
            printf("wednesday\n");
            break;
        case 'f':
            printf("friday\n");
            break;
        case 't':
            printf("请输入下一个字母\n");
            scanf("%c",&j);
            if (j=='u') {printf("tuesday\n");break;}
            if (j=='h') {printf("thursday\n");break;}
        case 's':
            printf("请输入下一个字母\n");
            scanf("%c",&j);
            if (j=='a') {printf("saturday\n");break;}
            if (j=='u') {printf("sunday\n"); break;}
        default :
            printf("error\n"); break;
    }
    return 0;
}

Java实现:

package com.xxnotes;
/*
 * 请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
 */

import java.util.Scanner;

public class Cdemo31 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("\"请输入星期值英文的第一个字母,我来帮您判断是星期几:\"");
        String weeks = scan.next();
        if (weeks.length() == 1) {
            weeks = weeks.toUpperCase();

            char week = weeks.charAt(0);
            switch (week) {
            case 'M':
                System.out.println("星期一(Monday)");
                break;
            case 'W':
                System.out.println("星期三(Wednesday)");
                break;
            case 'F':
                System.out.println("星期五(Friday)");
                break;
            case 'T':
                System.out.print("由于星期二(Tuesday)与星期四(Thursday)均以字母T开头,故需输入第二个字母才能正确判断:");
                String weeks2 = scan.next();
                if (weeks2.length() == 1) {
                    weeks2 = weeks2.toUpperCase();

                    char week2 = weeks2.charAt(0);
                    if (week2 == 'U') {

                        System.out.println("星期二(Tuesday)");
                        break;

                    } else if (week2 == 'H') {

                        System.out.println("星期四(Thursday)");
                        break;
                    }
                    break;
                }
            case 'S':
                System.out.print("由于星期六(Saturday)与星期日(Sunday)均以字母S开头,故需输入第二个字母才能正确判断:");
                String weeks3 = scan.next();
                if (weeks3.length() == 1) {
                    weeks3 = weeks3.toUpperCase();

                    char week3 = weeks3.charAt(0);
                    if (week3 == 'A') {

                        System.out.println("星期六(Saturday)");
                        break;

                    } else if (week3 == 'U') {

                        System.out.println("星期日(Sunday)");
                        break;
                    }
                    break;
                }
            }
        }

    }
}
最后编辑:2020年09月17日 ©著作权归作者所有

发表评论