c 语言改错

c 语言改错

题目
c 语言改错
#include "stdio.h"
void main()
{int a,b,year,day,month;
scanf("%d%d%d",&year,&month,&day);
switch(month)
{case 1:month=0;break;
case 2:month=31;break;
case 3:month=59;break;
case 4:month=90;break;
case 5:month=120;break;
case 6:month=151;break;
case 7:month=181;break;
case 8:month=212;break;
case 9:month=243;break;
case 10:month=273;break;
case 11:month=304;break;
case 12:month=334;break;
}
day+=month;
if(year%100==0)
{if (year%400==0)
printf("这一天是一年中的第%d天.",day++);
}
else if(year%4==0&&month>59) {a=day+month+1&& printf("这一天是一年中的第%d天.",day++);}
printf("这一天是一年中的第%d天.",day);
}
我求的是输入一年的某月某日,求这天是这年中的第几天.
可是我输入2000年的3月1日,总是输出“这一天是一年中的第六十天”,请你们看看那里错了啊!
忘了,这句a=day+month+1&& 没有
我已经自己解决了,呵呵,看了看我的程序有点乱,现在才理清头绪,留个地址吧,呵呵,以后还望大家多多指教.
答案
那是因为楼主判断的逻辑弄乱了
我这就讲下思路吧,实践部分留给楼主
不行的话,我在改
case语句结束后
判断 if month>59(到三月了)
{ 再判断是否是 if 闰年,是day++ }
输出day
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
最新试题
热门考点

超级试练试题库

© 2017-2019 超级试练试题库,All Rights Reserved.