慕田峪2209356
2016-04-21 19:03
如果把month=8改成14(只要大于12即可)输出结果 “只有12个月2008年14月8日是该年的第9天”不对啊 ,不是应该只输出“只有12个月”吗 ,不应该执行 default :printf("只有12个月");break;以后的语句了啊 ?
在
printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);
前面加上:else if(month>0&&month<=12)至于什么要加else呢是因为你前面有个if没有加上else语句所以下面这条判断语句要加上else,要不然木有用。
因为两条if语句他会只选其中一条if语句执行的
这样:
else if(month>0&&month<=12) printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);
就好了。
为了代码好下面记得加个 else{}
好像没说不执行了吧。
我觉得吗,要实现你说的要加句
if(month==8)
也可以,一般从控制台输入的话是需要判断输入是否规范
C语言入门
926207 学习 · 20797 问题
相似问题