慕圣5519978
2020-12-06 23:01
#include <stdio.h>
int main()
{
/* 定义需要计算的日期 */
int year = 2008;
int month = 8;
int day = 8;
int sum=0;
switch(month)
{
case 1:sum+=31;break;
case 2:if(year%400 != 0 && year%4 == 0)
{
sum += 29;
}
else{
sum += 28;
}
case 3:sum+=31;break;
case 4:sum+=30;break;
case 5:sum+=31;break;
case 6:sum+=30;break;
case 7:sum+=31;break;
default:printf("一年只有十二个月");break;
}
sum=sum+day;
printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);
return 0;
}
case ?:只会执行这一句,sum不会累加
#include <stdio.h>
int main()
{
/* 定义需要计算的日期 */
int year = 2008;
int month = 8;
int day = 8;
int sum=0;
switch(month)
{
case 8:sum=sum+day;
case 1:sum+=31;
case 2:if(year%400 != 0 && year%4 == 0)
{
sum += 29;
}
else{
sum += 28;
}
case 3:sum+=31;
case 4:sum+=30;
case 5:sum+=31;
case 6:sum+=30;
case 7:sum+=31;break;
default:printf("一年只有十二个月");break;
}
printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);
return 0;
}
懂了
你switch写错了,你看下你写的
C语言入门
926207 学习 · 20797 问题
相似问题