0
已解决
毕小曼
初级光能
初级光能
http://judge.codingtang.com/problem/2672/
题目:
题目描述 Description
现在给出同一年里的两个日期(几月几日),试着计算它们之间的天数之差。
比如,5月1日和5月2日之间的天数相差为1天。
2月的天数以28天计。
输入描述 Input Description
第一行,两个整数,a b,表示a月b日
第二行,两个整数,c d,表示c月d日
输出描述 Output Description
两个日期之间的差值
样例输入 Sample Input
1 1
12 31
样例输出 Sample Output
364
求大佬帮个忙,解个题!
顺便讲解一下!
感激不尽!!!!!!
0
已采纳
梁彦博
初级光能
初级光能
首先,定义一个结构体数组名为cj,其中有n,y两个变量
接着写主函数:
int main()
{
定义 a1[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};//把月份库记录下来
cj a,b;//定义cj类型的结构体a,b
定义 n=0;//初始化记录变量
输入>>a.n>>a.y>>b.n>>b.y;//输入两个日期的年与日
if(a.n*100+a.y>b.n*100+b.y) swap(a,b);//判断,大的在上,小的在下
for(int i=a.n;i<b.n;i++) n+=a1[i];//循环加上月份差
n+=b.y-a.y;//再加上剩下的天数差
输出<<n;
返回 0;
}
OK!这样就可以了!
0
吴宇轩
初级守护
初级守护
先在外面写
struct cj{
int n,y;
}a,b;
int m[13]={31, 28,31,30,31, 30,31,31, 30,31,30,31};
int ans;
然后在主函数里写
int a1[13]={0,31,28,31,30,31,30,31,31, 30,31,30,31};
cj a,b;
int n=0;
cin>>a.n>>a.y>>b.n>>b.y;
if(a.n*100+a.y>b.n*100+b.y) swap(a,b);
for(int i=a.n;i<b.n;i++) n+=a1[i];
n+=b.y-a.y;
cout<<n;
return 0;
OK!