本题要求用switch语句实现!
假如某月的1日是星期三,那么输入该月中的日期,要求输出对应的星期数。如输入3,则输出Friday。
输入格式:
输入该月中的日期(范围为1-31)
输出格式:
如输入的数据在1~31范围内,则输出对应的英文单词:星期几;否则输出:Error
输入样例1:
3
输出样例1:
Friday
输入样例2:
32
输出样例2:
Error
分析:1.因为本月的1日是星期三,而七天一周为一个循环,所以我们很容易想到除7取余的方法来得出当天是星期几;
2.为了使代码看起来容易理解,我们用day来代表你即将要输入的该月日期,用week来表示当天是星期几;
3.为了使我们的代码看起来整齐好看,我们一般会想到结果为1的时候输出Monday......所以我们需要对取余做一些小调整,因为题目1日是周三,所以我们可以给变量day + 2再去除7取余;
代码实现:
#include<stdio.h>
main()
{
int day = 0;
scanf("%d",&day);
int week = (day + 2) % 7;
if(day >= 1 && day <= 31)
{
switch(week)
{
case 0:
printf("Sunday\n");
break;
case 1:
printf("Monday\n");
break;
case 2:
printf("Tuesday\n");
break;
case 3:
printf("Wednesday\n");
break;
case 4:
printf("Thursday\n");
break;
case 5:
printf("Friday\n");
break;
case 6:
printf("Saturday\n");
}
}
else
{
printf("Error\n");
}
}
运行代码: