用C语言编译程序:输入制定年月的月份天数

要求:输入1900-3000年之间的某个日期y年m月,求出y年m月有多少天。
若要结束输入则输入y或Y,否则,继续输入年、月,输出当月的天数。
输入

年份y和月份m

输出

y年M月应有的天数d

样例输入
1998 2
n
2000 5
y

样例输出
28
31
提示:
注意闰年的判断。

希望有高手能帮忙,不胜感谢!!!

c语言忘记了,给你一个大概的思路
首先输入年份,scanf,然后判断是否闰年if
year/400,如果是闰年的话
下面接一个switch
,1,3,5,7,8,10
12输出31天,2,4,6,9,11是30天,2月28天
或者你用if语句写也可以。
编程尽量自己写,别人写出来虽然你能看懂,但是要你自己写还是写不出的。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-16
#include <stdio.h>
#include <stdlib.h>

void print_day(int year, int month)
{
switch (month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
printf("31\n");
break;
case 4:
case 6:
case 9:
case 11:
printf("30\n");
break;
case 2:
if ((0 == year % 400) || ((0 == year % 4) && (0 != year % 100)))
{
printf("29\n");
}
else
{
printf("28\n");
}
break;
default:
printf("month error!\n");
break;
}
}

int main(int argc, char **argv)
{
setbuf(stdout, NULL);
int year = 0, month = 0;
char ch;

do
{
printf("enter year and month:");
scanf("%d %d", &year, &month);
//scanf()在接收完输入后会有一个enter字符留在缓冲区,
//getchar()是用来接收enter字符的,否则将会影响下一个字符的输入
getchar();
print_day(year, month);
printf("conitue?");
scanf("%c", &ch);
} while ('y' == ch || 'Y' == ch);
return EXIT_SUCCESS;
}本回答被提问者采纳

C语言编程 从键盘输入一个年份和月份,输出该月有多少天(考虑闰年)_百度...
=0||y%400==0) \/\/最基本的判断闰年的条件 printf("这个月有29天\\n");else printf("这个月有28天\\n");break;case 4:case 6:case 9 :case 11:printf("这个月有30天\\n");break;}return 0;}用指针型列举的:#include<stdio.h>int a[]={31,28,31,30,31,30,31,31,30,31,30,3...

C语言输入年份月份,输出天数。
include <stdio.h>main(){int year,day,d,month,leap;int i;int Month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};printf("输入年份:\\n");scanf("%d",&year);printf("输入月份:\\n");scanf("%d",&month);if( (year%4!=0) ||( (year%100==0)&& (year%400!=0))...

c语言 输入年份和月份 输出该月有多少天(注:
编写一个程序,输入年份和月份,输出该月有多少天。首先,我们定义一个整型数组`mon`,用于存储每个月的天数。数组的第0个元素为0,表示从数组下标1开始才是有效的月份天数。数组元素依次为:31(1月)、28(2月)、31(3月)、30(4月)、31(5月)、30(6月)、31(7月)、31(8月)、31...

c语言;输入一个年份,输出该年各月份天数以及总天数。
include <stdio.h>main(){int i,year,month[12] ={31,28,31,30,31,30,31,31,30,31,30,31};scanf("%d",&year);if((year%4==0)&&(year%100!=0)||(year%400==0))month[1]++;year=0;for (i=0;i<12;i++)printf("month[%d]:day[%d]\\n",i+1,month[i]),year+=mont...

c语言编写程序,输入某年某月,求该月的天数
= 0) Day=29; else Day=28; break; default: Day=31; } cout <<"该月天数为:" << Day <<"天"; }尊敬的审核人员,对于您说的排版不清晰问题做出解释:C语言编辑器的自动排版,不能完全左对齐。

C语言入门问题:输入年份和月份,求该月有多少天
int year,mounth,days;printf("input year,mounth\\n");scanf("%d,%d",&year,&mounth);if(mounth%2!=0||mounth==8){ days=31;\/\/不管什么年份,这几个月天数都是固定的 } else{ if(mounth==2){ if((year%4==0)&&(year%100!=0)||(year%400==0))\/\/判断是否是闰年能被4整除...

请教,C语言如何实现:从键盘输入某一天的年月日,计算该天是当年的第几...
在C语言中,实现从键盘输入某一天的年月日,并计算该天是当年的第几天,可以遵循以下步骤:首先,我们需要包含必要的头文件。c include 接着,定义一个名为`fun`的函数,该函数接收三个参数,分别为年份、月份和日期。c int fun(int year, int month, int day)在`fun`函数内部,初始化一个整数...

从键盘输入一个年份和月份,输出这个月份的天数 (用C语言哦)
include<stdio.h> int a[]={31,28,31,30,31,30,31,31,30,31,30,31},*p1,*p2,*p3,i=1,k=0;int main(){ int p1,p2;printf("请依次输入年·月:\\n");scanf("%d%d",&p1,&p2);if(p1%4==0&&p1%100!=0||p1%400==0)a[1]=29;if(p2>12)printf("您的输入有误!\\n"...

c语言输入年月,输出该月有几天
先判断年,再确定二月天数,之后输出任意年,对应任意月的天数 include <stdio.h> int main(){ int y,m,Month_day[12]={0};printf("input year,month:");scanf("%d",&y);scanf("%d",&m);if(((y%4)==0)&&((y%100)!=0))||(y%400==0))Month_day[1]=29;else Month_day[1...

C语言编程从键盘输入一个年份和月份,输出该月有多少天(考虑闰年)_百度...
1. 程序首先包含了stdio.h头文件,这是C语言标准输入输出库所需的。2. 主函数main()开始,程序提示用户输入年份和月份,并使用scanf()函数读取这两个值。3. 使用if语句判断输入的年份是否为闰年,这是通过检查年份是否可以被4整除,但不能被100整除,或者可以被400整除来确定的。4. 如果是闰年,且...

相似回答
大家正在搜