文章
6
粉丝
98
获赞
0
访问
6.7k
#include<stdio.h>
struct node {
int year;
int month;
int day;
}p;
int f[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
int main(){
while(scanf("%d %d %d",&p.year,&p.month,&p.day) !=EOF){
//判断是否为润年能被400整除,或者能被4整除但不能被100整除的都是闰年,
if((p.year%400 == 0)|| (p.year%4==0)&&(p.year%100!=0))
{
f[2]=29;
}
else f[2]= 28;
int flag = 0;
if(p.month < 1 || p.month > 12) flag = 1;//判断月份是否合法
for (int i=1;i<=12;i++){//判断天数是否合法 ...
登录后发布评论
闰年的判断条件没有问题,你要把全局的f[13]数组放到while循环里面,不然的话只要一堆输入里面有一个闰年你把数组修改之后,后面的所有输入都用的是29这个数
闰年的天数合法判断有问题