用C 编写程序计算并输出今天为星期五,第N天后为星期几
时间: 2024-05-14 19:15:55 浏览: 42
好的,我来回答你的问题。这里是一个 C 编写的程序,它可以计算并输出从今天开始第 N 天为星期几:
```
#include <stdio.h>
int main() {
int n;
printf("请输入 N 的值:");
scanf("%d", &n);
int target_day = (n % 7 + 5) % 7;
char *weekday;
switch (target_day) {
case 0:
weekday = "星期天";
break;
case 1:
weekday = "星期一";
break;
case 2:
weekday = "星期二";
break;
case 3:
weekday = "星期三";
break;
case 4:
weekday = "星期四";
break;
case 5:
weekday = "星期五";
break;
case 6:
weekday = "星期六";
break;
}
printf("今天是星期五,第 %d 天后是%s\n", n, weekday);
return 0;
}
```
解释一下这个程序的逻辑。我们首先读入一个整数 N,表示从今天开始的第 N 天。然后我们通过求模运算来确定从今天开始第 N 天是星期几。这里的关键在于我们先将 N 对 7 取模,这样我们就能得到从今天开始经过了几个完整的星期。然后我们再加上从今天开始的是星期五,所以这里加 5。最后我们再将结果对 7 取模,将取值范围控制在 0 到 6 之间,表示星期天到星期六。我们再通过 switch 语句将数字和星期的名称对应起来,最终输出计算结果。
阅读全文