c语言定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天?注意闰年的问题。
展开全部
#include "stdio.h" struct Date { int year,month,day; }; main() { Date tem; scanf("%d %d %d",&tem.year,&tem.month,&tem.day); int daytab[2][12]= {{31,28,31,30,31,30,31,31,30,31,30,31}, {31,29,31,30,31,30,31,31,30,31,30,31}}; int r = 0; int i,R; if(tem.year%400==0 || (tem.year%4==0 && tem.year%100!=0)) R = 1; else R = 0; //如果是闰年,isR=1,否则isR=0 for(i=0;i<tem.month-1;++i) r += daytab[R][i]; //加上前面每个月的天数 r += tem.day; //加上这个月的天数 printf("%d",r); } 顺手写的,默认认为输入数据有效, 应该可以满足你的要求
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询