ZKX's LAB

c语言 输入某年某月 求该月天数 c语言编写程序,输入某年某月,求该月的天数

2021-04-09知识19

求C语言题目答案——输入某年某月某日,判断这一天是这一年的第几天?程序运行的流程图 流程图不方便画,对此程序,给你简单分析下它的思考方式,相信你会看明白的。输入某年某月某日,判断这一天是这一年的第几天?那么需要考虑三个变量,年,月,日。首先,年主要要考虑的因素是否是闰年的问题。月要考虑的是那一个月的问题。因为不同月的天数不一样。日嘛,就不用说了。还有就是,月份是一月或者二月,那么就不需要考虑是否闰年的问题,因为不需要计算二月总共多少天。上述程序,首先是在默认闰年的情况下计算某月前面所有月的天数和,然后加上当月的零头天数,最后才是判断当月是否大于二月,如果大于二月,那么必须考虑闰年的问题,再接着判断是否闰年,如果非闰年总天数减一,是闰年不变,因为在开始计算的过程中时默认闰年的。回答完毕。

c语言 输入某年某月某日,判断这一天是这一年的第几天 #include输入某年某月某日,判e5a48de588b63231313335323631343130323136353331333431356634断这一天是这一年的第几天?int getDaysByMonth(int m,int d,char flag){int c;if(flag='r'){/闰年if(m=2){/2月是29天return(31+d);}else if(m>;2){c=0;m=m-1;for;m>;0;m-){if(m=1|m=3|m=5|m=7|m=8|m=10|m=12){c+31;}else if(m=2){c+29;}else{c+30;}}return c+d;}else{return d;}}else{/平年if(m=2){/2月是28天return(31+d);}else if(m>;2){c=0;m=m-1;for;m>;0;m-){if(m=1|m=3|m=5|m=7|m=8|m=10|m=12){c+31;}else if(m=2){c+28;}else{c+30;}}return c+d;}else{return d;}}}void main(){int y,m,d,count=1;printf(\"请输入年月日(例如2017-01-01):\");scanf(\"%d-%d-%d\",&y,&m,&d);while(((((y%4=0&y%100。0)|(y%400=0))&(m=2))&d>;29)|(y%400。0&y%4。0&m=2&d>;28)|((m=1|m=3|m=5|m=7|m=8|m=10|m=12)&d>;31)|((m=4|m=6|m=9|m=11)&d>;30)){printf(\"请输入年月日(例如2017-01-01):\");scanf(\"%d-%d-%d\",&y,&m,&d);}先判断是否为闰年if((y%4=0&y%100。0)|(y%400=0)){/闰年count=getDaysByMonth(m,d,'r');}else{/平年count=getDaysByMonth(m,d,'n')。

用C语言switch语句计算某年某月,求该月的天数。 #includevoid main(){int a=0,b=0;保存年月printf(\"请输入年\");scanf(\"%d\",&a);printf(\"请输入月\");scanf(\"%d\",&b);switch(b){case 1:printf(\"该月天数为31\");break;case 2:if((a%4=0&a%100。0)|(a%400=0)){printf(\"该月天数为29\");}else{printf(\"该月天数为28\");}break;case 3:printf(\"该月天数为31\");break;case 4:printf(\"该月天数为30\");break;case 5:printf(\"该月天数为31\");break;case 6:printf(\"该月天数为30\");break;case 7:printf(\"该月天数为31\");break;case 8:printf(\"该月天数为31\");break;case 9:printf(\"该月天数为30\");break;case 10:printf(\"该月天数为31\");break;case 11:printf(\"该月天数为30\");break;case 12:printf(\"该月天数为31\");break;}}

#c语言 输入某年某月 求该月天数#用c语言求某年某月的天数#用c语言编写计算某月天数

随机阅读

qrcode
访问手机版