这是很简单的思路

来源:4-17 switch与if语句的应用

出众9582573

2022-09-24 22:15

#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回答

  • 精慕门8497905
    2023-10-15 18:16:49

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

  • 慕侠1012621
    2023-10-08 17:17:53

    为什么switch里是m-1

    精慕门849...

    本月的天数不算。先从本月(m)的上一月算起,把完整月份(共m-1个月)的天数加进去,后面再算把本月,把本月过啦几天再加进去。就是答案。

    2023-10-15 18:01:04

    共 1 条回复 >

  • 小机灵鬼er
    2023-07-10 15:35:45

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

  • weixin_慕斯6186039
    2023-03-09 20:44:39

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

    搜索

    复制

  • weixin_慕工程7134342
    2022-10-20 19:34:32

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

  • Fy拒绝摆烂
    2022-10-13 15:24:58

    厉害呀 


C语言入门

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

926207 学习 · 20797 问题

查看课程

相似问题