输入年月用if和switch判断年是否为闰年,并输出该月有多少天
思想:闰年的定义:能被4整除却不能被100整除或者能被400整除
用flag作为判断闰年的标志,flag=0,则该年不是闰年,flag=1代表该年是闰年
#include<stdio.h>
void main()
{
int year,month,flag=0;
printf("please input year and month:\n");
scanf("%d,%d",&year,&month);
if(year%4==0&&year%100!=0)
{
flag=1;
printf("this year is leap\n");
}
else if(year%400==0)
{
flag=1;
printf("this year is leap\n");
}
else{
flag=0;
printf("this year is not leap\n");
}
//以上部分是判断是否为闰年,下面一部分是判断每个月有多少天
switch(month)
{
case 1:
printf("this month have 31 days");
break;
case 2:
if(flag==1)
{
printf("this month have 29 days");
}else{
printf("this month is 28 days");
}
break;
case 3:
printf("this month have 31 days");
break;
case 4:
printf("this month have 30 days");
break;
case 5:
printf("this month have 31 days");
break;
case 6:
printf("this month have 30 days");
break;
case 7:
printf("this month have 31 days");
break;
case 8:
printf("this month have 31 days");
break;
case 9:
printf("this month have 30 days");
break;
case 10:
printf("this month have 31 days");
break;
case 11:
printf("this month have 30 days");
break;
case 12:
printf("this month have 31 days");
break;
default:{
printf("this month is not formal month");
}
}
}
注意:输入的时候要根据scanf里面的样式输入,该代码里面输入的逗号是英文的逗号,可以根据自己的喜欢对scanf的输入样式修改
运行结果为: