C语言难点
#include<stdio.h> struct date { int y,m,d; }; int fun(struct date *p) { int a=0; switch(p->m) {case 12:a+=30;//加上11月份的天数 case 11:a+=31;//加上10月份的天数,以下依次类推 case 10:a+=30; case 9:a+=31; case 8:a+=31; case 7:a+=30; case 6:a+=31; case 5:a+=30; case 4:a+=31; case 3:if(p->y%4==0&&p->y%100!=0||p->y%400==0) a+=29;else a+=28; case 2:a+=31; case 1:a+=p->d; } return a; } int main() { struct date d,*pd; int i; char a,b; pd=&d; printf("以yy.mm.dd的格式输入一个日期\n"); scanf("%4d%c%2d%c%2d",&pd->y,&a,&pd->m,&b,&pd->d); i=fun(pd); printf("是该年的第%d天\n",i); return; }