求某年的哪一天?错在哪了?高手指点
#include "stdio.h"main()
{
int y,m,d,i,j,x=0;
int mon[12]={31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d,%d,%d\n",&y,&m,&d);
if(y%4==0&&y%100!=0||y%400==0)
mon[1]++;
for(i=1;i<m;i++)
for(j=0;j<mon[i-1];j++)
x++;
x=x+d;
printf("%d",x);
}
[[it] 本帖最后由 zhaoruiqi1975 于 2008-1-27 22:23 编辑 [/it]]
----------------解决方案--------------------------------------------------------
scanf("%d,%d,%d\n",&y,&m,&d); //把\n去掉
----------------解决方案--------------------------------------------------------
楼上的很正确~~~~
----------------解决方案--------------------------------------------------------
后面那个二重循环里面那重多余
----------------解决方案--------------------------------------------------------
#include "stdio.h"
main()
{
int mon[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int y,m,d,i,j,x=0;
scanf("%d,%d,%d",&y,&m,&d);
if(y%4==0&&y%100!=0||y%400==0)
mon[1]++;
for(i=0;i<(m-1);i++)
x=x+mon[i];
x=x+d;
printf("%d",x);
}
这样确实可以了,只是为什么要去掉\n?
----------------解决方案--------------------------------------------------------