为了账号安全,请及时绑定邮箱和手机立即绑定

这是很简单的思路

#include <stdio.h>
int main() 
{ 
 
    int i = 2008,sum=0;
    int m = 8;
    int d = 8;
    switch(m-1){
    case 12: sum+=31;
  case 11 : sum+=30;
  case 10: sum+=31;
  case 9: sum+=30;
  case 8: sum+=31;
  case 7: sum+=31;
  case 6: sum+=30;
  case 5: sum+=31;
  case 4: sum+=30;
   case 3: sum+=31;
    case 2: if(i%4==0&&i%100!=0||i%400==0)sum+=29;
    else sum+=28;
    
    
    case 1:sum+=31;break;

}

printf("%d年%d月%d日是该年的第%d天,",i,m,d,sum+d);




	return 0;
}


正在回答

6 回答

这里case(12)可以省略吗?好像用不到它。

0 回复 有任何疑惑可以回复我~

为什么switch里是m-1

0 回复 有任何疑惑可以回复我~
#1

精慕门8497905

本月的天数不算。先从本月(m)的上一月算起,把完整月份(共m-1个月)的天数加进去,后面再算把本月,把本月过啦几天再加进去。就是答案。
2023-10-15 回复 有任何疑惑可以回复我~

wc,厉害了 利用程序机制运算 ,太合理 6

0 回复 有任何疑惑可以回复我~

这才是正常思路,标准答案看的我一脸蒙B

搜索

复制

0 回复 有任何疑惑可以回复我~

厉害啊,这思路我没想到,借鉴了

0 回复 有任何疑惑可以回复我~

厉害呀 


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926206    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

这是很简单的思路

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信