C语言switch语句输入某年某月某日判断这一天是这一年的第几天
以下是一个示例代码:
#include <stdio.h>
int main() {
int year, month, day;
int days = 0;
printf("请输入年份:");
scanf("%d", &year);
printf("请输入月份:");
scanf("%d", &month);
printf("请输入日期:");
scanf("%d", &day);
switch (month) {
case 12:
days += 30;
case 11:
days += 31;
case 10:
days += 30;
case 9:
days += 31;
case 8:
days += 31;
case 7:
days += 30;
case 6:
days += 31;
case 5:
days += 30;
case 4:
days += 31;
case 3:
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
days += 29;
} else {
days += 28;
}
case 2:
days += 31;
case 1:
days += day;
break;
default:
printf("输入的月份不正确!\n");
return 0;
}
printf("%d年%d月%d日是该年的第%d天。\n", year, month, day, days);
return 0;
}
该代码中,使用了switch语句来根据输入的月份计算该月之前的天数,最后再加上输入的日期,得到该日期是该年的第几天。需要注意的是,如果输入的月份不在1~12之间,需要给出错误提示并退出程序。
原文地址: https://www.cveoy.top/t/topic/Ne1 著作权归作者所有。请勿转载和采集!