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

结果为什么不对啊

#include <stdio.h>

int main()

{

int year = 2008, month = 8, day = 8;

int sum = 0;

switch(month-1)

{

case 1:

sum += 31;

case 2:

if(year%4 == 0 || year%100 != 0 && year%400 == 0 )

sum +=29;

else

sum +=28;

case 3:

sum += 31;

case 4:

sum += 30;

case 5:

sum += 31;

break;

case 6:

sum += 30;

case 7:

sum += 31;

case 8:

sum += 31;

case 9:

sum += 30;

case 10:

sum += 31;

case 11:

sum += 30;

case 12:

sum += 31;

}

sum = sum + day;

printf("%d\n",sum);

return 0;

}

老师我这个结果不对,,找不到哪里错了,,拜托帮我纠正,讲解一下。谢谢老师啊!


正在回答

1 回答

这个应该倒着排吧  并且 switch(month-1)  不用 减  1

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

zzzzt 提问者

为什么一定要到着排?
2016-05-11 回复 有任何疑惑可以回复我~
#2

一二三siwu 回复 zzzzt 提问者

你这样排就是从八开始往下执行然后9月 最后是12月; 倒着 就是8月 7月最后1月
2016-05-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

结果为什么不对啊

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