2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > C语言编程>第一周 ③ 输入某年某月某日 判断这一天是这一年的第几天

C语言编程>第一周 ③ 输入某年某月某日 判断这一天是这一年的第几天

时间:2022-07-08 22:17:57

相关推荐

C语言编程>第一周 ③ 输入某年某月某日 判断这一天是这一年的第几天

例题:输入某年某月某日,判断这一天是这一年的第几天

程序分析:以8月8日为例,应该先把前八个月的加起来,然后再加上8天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。

代码如下

#include<stdio.h>int main(){int day,month,year,sum,leap;printf("请按照这样的格式:8月8日,输入您想查询的日期.\n");scanf("%4d年%2d月%d日",&year,&month,&day);switch(month){case 1:sum=0;break;case 2:sum=31;break;case 3:sum=59;break;case 4:sum=90;break;case 5:sum=120;break;case 6:sum=151;break;case 7:sum=181;break;case 8:sum=212;break;case 9:sum=243;break;case 10:sum=273;break;case 11:sum=304;break;case 12:sum=334;break;default:printf("您输入的日期无效.");break;}sum=sum+day;if(day<=31){if((year%400==0||(year%4==0&&year%100!=0))&&month>2) //是闰年且月份大于2方加一 leap=1;elseleap=0;if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/sum++;printf("这一天是%4d年的第%d天\n",year,sum);}elseprintf("您输入的日期无效.");return 0;}

例设输入的日期为8月8日,则运行窗口如下:

本周其他练习

C语言程序设计专栏

C语言编程>第一周 ① 输入两个数,并使其从大到小输出(利用指针方式)。

C语言编程>第一周 ② 输入圆的半径r的值,输出其面积。

C语言编程>第一周 ③ 输入某年某月某日,判断这一天是这一年的第几天。

C语言编程>第一周 ④ 输出9*9乘法表。

C语言编程>第一周 ⑤ 有1、2、3、4,4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

C语言编程>第一周 ⑥ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

C语言编程>第一周 ⑦ 利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。

C语言编程>第一周 ⑧ 输入两个正整数m和n,求其最大公约数和最小公倍数。

越努力越幸运!

加油,奥力给!!!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。