判断多少天
判断某天是一年中的第几天
//求解:给出日期,判断是这年的第几天
/*思路:1涉及输入与输出的变量
2平润年月份+几号;
平闰年:if
月份 :switch
几号:
3输出
*/
#include <stdio.h>
int main()
{
int year, month, day;
int sum = 0;
int leap;
scanf("%d,%d,%d", &year, &month, &day);
/*
switch(month){
case 1:printf("1月份\n");break;
case 2:printf("2月份\n");break;
case 3:printf("3月份\n");break;
case 4:printf("4月份\n");break;
case 5:printf("5月份\n");break;
case 6:printf("6月份\n");break;
case 7:printf("7月份\n");break;
case 8:printf("8月份\n");break;
case 9:printf("9月份\n");break;
case 10:printf("10月份\n");break;
case 11:printf("11月份\n");break;
case 12:printf("12月份\n");break;
default:printf("月份输入错误\n");
}
*/
switch(month){
case 1: sum = 0; break;
case 2: sum = 31; break;
case 3: sum = 31 + 28; break;
case 4: sum = 31 + 28 +31; break;
case 5: sum = 31 + 28 +31 + 30; break;
case 6: sum = 31 + 28 +31 + 30 + 31; break;
case 7: sum = 31 + 28 +31 + 30 + 31 + 30; break;
case 8: sum = 31 + 28 +31 + 30 + 31 + 30 + 31; break;
case 9: sum = 31 + 28 +31 + 30 + 31 + 30 + 31 + 31; break;
case 10: sum = 31 + 28 +31 + 30 + 31 + 30 + 31 + 31 + 30; break;
case 11: sum = 31 + 28 +31 + 30 + 31 + 30 + 31 + 31 + 30 + 31; break;
case 12: sum = 31 + 28 +31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30; break;
default:printf("月份输入错误\n");
}
///printf("sum=%d\n", sum);
//加上day
sum += day;
/*平闰年计算规则:普通年能整出4且不能整出100,则是闰年
世纪年能整出400,则是闰年。
*/
if(year%4==0 && year%100 != 0 || year%400==0){
int leap = 0;
} else{
int leap = 1;
}
if(leap){
sum++;
}
printf("它是%d的第%d天\n", year, sum);
return 0;
}
学习到
-
平闰年判断
-
开关变量
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律