c语言年月日计算再次给出任意一个年月日(年>1900),现在我们不能只是直接计算,要先判断给出的日期是否合法,对于非法的
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/04 22:53:12
c语言年月日计算
再次给出任意一个年月日(年>1900),现在我们不能只是直接计算,要先判断给出的日期是否合法,对于非法的日期要给出错误提示信息,合法的日期要再计算是星期几.
输入:
年 月 日
输出:
6.
星期日用 0 表示,星期一用 1 表示,星期二用 2 表示.星期六用 6 表示.
假设年份大于1900.先想一想:我们现在只会使用 if 语句,该如何建立数学模型?
#include
int main()
{
int day,mn,yr,i,days=0,s,k;
int mont[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d %d %d",&yr,&mn,&day);
if (mn>12)
printf("month is error.\n");
else if
(mn==2&&yr%4!=0&&day>28)
printf("day is error.\n");
else if
(mn==2&&yr%4==0&&day>29)
printf("day is error.\n");
else if
((mn==1||mn==3||mn==5||mn==7||mn==8||mn==10||mn==12)&&day>31)
printf("day is error.\n");
else if
((mn==4||mn==6||mn==9||mn==11)&&day>30)
printf("day is error.\n");
else{
if (yr%4==0||yr%100==0||yr%400==0)
mont[2]=29;
else
mont[2]=28;
for (i=0;i
再次给出任意一个年月日(年>1900),现在我们不能只是直接计算,要先判断给出的日期是否合法,对于非法的日期要给出错误提示信息,合法的日期要再计算是星期几.
输入:
年 月 日
输出:
6.
星期日用 0 表示,星期一用 1 表示,星期二用 2 表示.星期六用 6 表示.
假设年份大于1900.先想一想:我们现在只会使用 if 语句,该如何建立数学模型?
#include
int main()
{
int day,mn,yr,i,days=0,s,k;
int mont[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d %d %d",&yr,&mn,&day);
if (mn>12)
printf("month is error.\n");
else if
(mn==2&&yr%4!=0&&day>28)
printf("day is error.\n");
else if
(mn==2&&yr%4==0&&day>29)
printf("day is error.\n");
else if
((mn==1||mn==3||mn==5||mn==7||mn==8||mn==10||mn==12)&&day>31)
printf("day is error.\n");
else if
((mn==4||mn==6||mn==9||mn==11)&&day>30)
printf("day is error.\n");
else{
if (yr%4==0||yr%100==0||yr%400==0)
mont[2]=29;
else
mont[2]=28;
for (i=0;i
![c语言年月日计算再次给出任意一个年月日(年>1900),现在我们不能只是直接计算,要先判断给出的日期是否合法,对于非法的](/uploads/image/z/8576456-32-6.jpg?t=c%E8%AF%AD%E8%A8%80%E5%B9%B4%E6%9C%88%E6%97%A5%E8%AE%A1%E7%AE%97%E5%86%8D%E6%AC%A1%E7%BB%99%E5%87%BA%E4%BB%BB%E6%84%8F%E4%B8%80%E4%B8%AA%E5%B9%B4%E6%9C%88%E6%97%A5%EF%BC%88%E5%B9%B4%3E1900%EF%BC%89%2C%E7%8E%B0%E5%9C%A8%E6%88%91%E4%BB%AC%E4%B8%8D%E8%83%BD%E5%8F%AA%E6%98%AF%E7%9B%B4%E6%8E%A5%E8%AE%A1%E7%AE%97%2C%E8%A6%81%E5%85%88%E5%88%A4%E6%96%AD%E7%BB%99%E5%87%BA%E7%9A%84%E6%97%A5%E6%9C%9F%E6%98%AF%E5%90%A6%E5%90%88%E6%B3%95%2C%E5%AF%B9%E4%BA%8E%E9%9D%9E%E6%B3%95%E7%9A%84)
首先,你的闰年判断就有问题.教你个口诀:“四年一润,一百年不润,四百年再润”.
其实就可以用if(yr%4==0||yr%100!=0&&yr%400==0){那么是闰年}
你的检验判断也可以利用mont数组的,首先判断是不是在闰年,然后判断输入days是不是大于的mont[mn](如果是闰年要判断二月+1).
其实就可以用if(yr%4==0||yr%100!=0&&yr%400==0){那么是闰年}
你的检验判断也可以利用mont数组的,首先判断是不是在闰年,然后判断输入days是不是大于的mont[mn](如果是闰年要判断二月+1).
c语言年月日计算再次给出任意一个年月日(年>1900),现在我们不能只是直接计算,要先判断给出的日期是否合法,对于非法的
C语言 日期(年月日 ) 排序
使用C#,如何开发一个程序,计算两个日期之间的时长,必须精确到年月日时分秒
c语言,已知1年1月1日是星期一,计算输入的年月日是星期几
C语言关于算年月日差距的
用C语言编一程序,可以计算表达式的值,对非法表达式要给出提示,并要求重新输入正确表达式.
已知公元1年1月1日是星期一,计算输入的年月日是星期几?(用C语言编写)
C语言问题,定义一个表示日期的结构体变量(包括年月日),写一个函数,返回值为某天是当年的第几天
农历的年月日天干地支如何计算?
给定某个年月日,计算出这天属于该年的第几天.要就写出计算闰年的函数和计算日期函数.
C语言.求指教!已知公元1年1月1日是星期一.计算输入的年月日是星期几.
c语言编程题 已知2012年1月1日是星期日,现在输入其后的任意一个日期(年份不超过9999),计算该日是星期几.