用C语言编写代码实现以下功能: 1、输入某一年某一月某一天,计算该天是当年的第几天并输出。 2、当输入的是2023年的某月某天时,计算当天是星期几并输出。 答案提交:
时间: 2023-04-11 09:00:54 浏览: 87
C语言输入一个整数序列并计算他们的值.rar_C语言输入一个整数序列并计算他们的值_输入序列C语言
5星 · 资源好评率100%
1、以下是用C语言编写的代码实现该功能:
#include <stdio.h>
int main()
{
int year, month, day, days = 0;
printf("请输入年月日,格式为:年 月 日\n");
scanf("%d %d %d", &year, &month, &day);
int month_days[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
month_days[1] = 29; // 闰年2月有29天
}
for (int i = 0; i < month - 1; i++) {
days += month_days[i];
}
days += day;
printf("%d年%d月%d日是该年的第%d天\n", year, month, day, days);
return 0;
}
2、以下是用C语言编写的代码实现该功能:
#include <stdio.h>
int main()
{
int year = 2023, month, day;
printf("请输入月日,格式为:月 日\n");
scanf("%d %d", &month, &day);
int month_days[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
month_days[1] = 29; // 闰年2月有29天
}
int days = 0;
for (int i = 0; i < month - 1; i++) {
days += month_days[i];
}
days += day;
int week = (days + 2) % 7; // 2023年1月1日是星期日,所以加2
char* week_str[7] = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
printf("2023年%d月%d日是%s\n", month, day, week_str[week]);
return 0;
}
答案提交完毕。
阅读全文