注意:1将先声明后第一eg.i,j……
2错误检查使得一切符合常规eg.day,month,year;
3if语句中的条件的控制
4.检查错误时注意将函数中的指针指向的对象的值要写好若不存在则写*p=-1;
若写好后直接结束则需要添加return;
#include <stdio.h>
#include <stdlib.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc,char *argv[]) {
return 0;
}
static int dayab[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};
void month_day(int year,int yearday,int *pmonth,int *pday){
int leap;
int i;
if(year<1){
*pmonth=-1;
*pday=-1;
return;//这里的return用于从程序中跳出来//
}
leap=year%4==0&&year%100!=0||year%400==0;
for(i=1;yearday>dayab[leap][i]&&i<=12;i++)
yearday-=dayab[leap][i];
if(i>12&&yearday>=dayab[leap][12]){
*pmonth=-1;
*pday=-1;//此处不需要return因为呢if语句后就直接结束了 //
}
*pmonth=i;
*pday=yearday;
}