/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013,郑州大学SIAS国际学院
* 作 者: 王 杰
* 完成日期:2013 年 11 月 13 日
*
* 对任务及求解方法的描述部分:
* 输入描述: 略或见注释、总结
* 问题描述: 略或见注释、总结
* 程序输出: 略或见注释、总结
* 问题分析: 略或见注释、总结
* 算法设计: 略或见注释、总结
*/
#include<stdio.h>
int main()
{
int n;
int year,mon,day;
int a,i,p,j;
scanf("%d",&n);
while(n--){
scanf("%d%d%d",&year,&mon,&day);
p=0;
i=1;
j=8;
if(mon<=8){
while(i<mon && mon<=8){
if(i%2!=0)
p+=31;
if(i==2)
p+=28;
if(i%2==0 && i!=2)
p+=30;
i++;
}
p+=day;
if(year%4==0 && year%100!=0 || year%400==0 && i>1)
printf("%d\n",p+1);
else
printf("%d\n",p);
}
else{
while(j<mon && mon<=12){
if(j%2!=0)
p+=30;
if(j%2==0)
p+=31;
j++;
}
p+=day;
if(year%4==0 && year%100!=0 || year%400==0)
printf("%d\n",p+213);
else
printf("%d\n",p+212);
}
}
return 0;
}
运行结果:
总结:算法虽然是正确的,但是有点复杂了。有时间了再重新设计一个算法,今天先就这样吧,这几天重点是其他学习,AC就先稍微的放放,慢慢的做一道算一道吧。加油!干吧得! 出现错误了,要有找出错误,并给出解决方案的能力。没有发挥表达式的作用........ 没有用到数组 有些语句还没有真正的掌握..............