_Observer
2019-02-22 18:13
这段代码我用devc++运行显示default那行有错误,但是不知道是错哪了.....
#include <stdio.h>
int main()
{
/* 定义需要计算的日期 */
int year = 2008;
int month = 8;
int day = 8;
/*
* 请使用switch语句,if...else语句完成本题
* 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”
* 小编还是希望大家独立完成哦~
*/
int date=0;
switch(month)
{
case 12:date+=30;
case 11:date+=31;
case 10:date+=30;
case 9:date+=31;
case 8:date+=31;
case 7:date+=30;
case 6:date+=31;
case 5:date+=30;
case 4:date+=31;
case 3:if(year%400==0||(year%4==0&&year%100!=0))
{ date+=29;}
else {date+=28;}
case 2:date+=31;
default:date+=8,printf("2008年8月8日是该年第%d天",date);
break;
}
return 0;
}
default:date+=8, <----你这里是逗号啊
printf("2008年8月8日是该年第%d天",date);
好多小细节,你天数好多都加错了吧 对应月份 1.3.5.7.8.10.12 都是加31啊。。。还有你的一月也不见了。。。
然后后面应该是在case 2后面说:
if(year%400==0||(year%4==0&&year%100!=0))
{ date+=29;}
else {date+=28;}
C语言入门
926020 学习 · 20793 问题
相似问题