文章
28
粉丝
82
获赞
5
访问
16.5k
打印日期这个题,为啥前面几个测试用例都对,后面三个不对啊,如果不输前面几个,后面三个输出就没有问题
#include
int main()
{
int m,n;
int i=1;
//scanf("%d %d",&m,&n);
int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
while(scanf("%d %d",&m,&n)!=EOF){
if((m%4==0&&m%100!=0)||(m%400==0))
{
a[2]=29;
}
else
{
a[2]=28;
}
while(n>a[i])
{
n=n-a[i];
i++;
}
printf("%d-%02d-%02d\n",m,i,n);
}
&n...
登录后发布评论
int i=1;这一行的定义不应该在while前面
应该定义在while里面
遇到多组输入这类题目,需要注意每一次输入都需要把原来的数据重置,否则会影响到后面的计算。