本题要求用switch语句实现! 假如某月的1日是星期三,那么输入该月中的日期,要求输出对应的星期数。如输入3,则输出Friday。 输入格式: 输入该月中的日期(范围为1-31) 输出格式: 如输入的数据在1~31范围内,则输出对应的英文单词:星期几;否则输出:Error 输入样例1: 3 输出样例1: Friday 输入样例2: 32 输出样例2: Error。用C语言实现
时间: 2024-02-23 20:57:49 浏览: 98
好的,下面是用C语言实现的代码:
```c
#include <stdio.h>
int main()
{
int day;
scanf("%d", &day);
switch (day % 7) {
case 1: printf("Wednesday\n"); break;
case 2: printf("Thursday\n"); break;
case 3: printf("Friday\n"); break;
case 4: printf("Saturday\n"); break;
case 5: printf("Sunday\n"); break;
case 6: printf("Monday\n"); break;
case 0: printf("Tuesday\n"); break;
default: printf("Error\n");
}
return 0;
}
```
你可以将代码复制到本地C语言环境中运行测试。
相关问题
本题要求用 switch 语句实现!假如某月的 1 日是星期三,那么输入该月中的日期,要求输出对应的星期数。如输入 3,则输出 Friday。
以下是使用 switch 语句实现的代码:
```c
#include <stdio.h>
int main()
{
int day;
printf("Please enter a day of the month: ");
scanf("%d", &day);
int weekday = (day + 2) % 7; // 计算星期数,注意要加 2,因为 1 号是星期三
switch (weekday)
{
case 0:
printf("Sunday");
break;
case 1:
printf("Monday");
break;
case 2:
printf("Tuesday");
break;
case 3:
printf("Wednesday");
break;
case 4:
printf("Thursday");
break;
case 5:
printf("Friday");
break;
case 6:
printf("Saturday");
break;
default:
printf("Invalid input");
break;
}
return 0;
}
```
注意,这里我们将星期数从 0 开始计数,0 表示星期日,1 表示星期一,以此类推,6 表示星期六。因此在计算星期数时,我们需要先将日期减去 1,再加上 2,最后再对 7 取模。
要求用switch语句实现! 假如某月的1日是星期三,那么输入该月中的日期,要求输出对应的星期数。如输入3,则输出Friday。C语言
### 回答1:
中的代码实现如下:
```
#include <stdio.h>
int main() {
int date;
printf("Please input the date: ");
scanf("%d", &date);
switch (date % 7) {
case 1: printf("Wednesday\n"); break;
case 2: printf("Thursday\n"); break;
case 3: printf("Friday\n"); break;
case 4: printf("Saturday\n"); break;
case 5: printf("Sunday\n"); break;
case 6: printf("Monday\n"); break;
case 0: printf("Tuesday\n"); break;
default: printf("Invalid date!\n"); break;
}
return 0;
}
```
该程序首先读入一个整数日期,然后使用 switch 语句来根据余数对应到星期数,并输出相应的结果。余数为 1 表示这一天是星期三,转换到星期数时应该再加上 2,因此将取模结果与 7 相减得到对应的星期数。程序还加入了默认情况和错误提示,以提高程序的健壮性。
### 回答2:
假设星期三为该月1日,根据输入的日期,使用switch语句判断对应的星期数。
```c
#include <stdio.h>
int main() {
int date;
printf("请输入日期:");
scanf("%d", &date);
int week = (date - 1) % 7; // 计算日期对应星期数的偏移量
switch (week) {
case 0:
printf("星期三\n");
break;
case 1:
printf("星期四\n");
break;
case 2:
printf("星期五\n");
break;
case 3:
printf("星期六\n");
break;
case 4:
printf("星期日\n");
break;
case 5:
printf("星期一\n");
break;
case 6:
printf("星期二\n");
break;
}
return 0;
}
```
运行程序后,输入日期,程序会根据输入的日期输出对应的星期数。例如,输入3,则输出"星期五"。
### 回答3:
要用switch语句实现这个功能,可以先根据输入的日期计算出对应的星期数,再用switch语句将对应的星期数输出。
首先,根据题目给出的信息,这个月的1号是星期三,我们可以假设计算出输入日期与1号之间相差的天数。假设输入日期为n,那么相差的天数可以计算为(n-1) % 7。
接下来,我们用switch语句根据相差的天数将对应的星期数输出。因为星期的范围是从星期一到星期日,所以在switch中我们可以设置7个case分别对应这7个星期数。由于星期数是连续的,对应关系也是固定的,所以在每个case中我们只需要输出对应的星期数。
以下是用C语言实现的代码:
```c
#include <stdio.h>
int main() {
int date;
int day_of_week;
printf("请输入日期:");
scanf("%d", &date);
day_of_week = (date - 1) % 7;
switch (day_of_week) {
case 0:
printf("星期一\n");
break;
case 1:
printf("星期二\n");
break;
case 2:
printf("星期三\n");
break;
case 3:
printf("星期四\n");
break;
case 4:
printf("星期五\n");
break;
case 5:
printf("星期六\n");
break;
case 6:
printf("星期日\n");
break;
default:
printf("输入的日期无效\n");
break;
}
return 0;
}
```
以上代码会先要求用户输入一个日期,然后根据输入的日期计算相差的天数,再使用switch语句将对应的星期数输出。例如,输入3时,输出为星期四。
阅读全文