c++计算年月

来源:百度知道 编辑:UC知道 时间:2024/06/26 02:57:16
实训内容:
一、生命类Date
要求:
1、使用户可以设置日期,并在输入错误时提示。
a一年12个月,若输入12以外的数,提示“输入月份错误”
b每个月依次有{31,28/29,31,30,31,30,31,31,30,31,30,31}若输入的数值超过该月天数,提示“输入天数错误”。
2、可以查询两个日期之间相差天数
注意:闰年
二、数组排序
1、定义交换两个整型数的函数swap
2、定义sort函数给数组排序,调用swap函数
3、修改swap函数和sort函数,使之可用于任意类型
要用c++Date类
提示“输入天数错误”。
2、可以查询两个日期之间相差天数

# include <stdio.h>

# include <conio.h>

int sum_day(int month, int day);

int leap(int year);

void main()

{

int year, month, day;

int days;

printf("请输入日期(年,月,日):");

scanf("%d, %d, %d", &year, &month, &day);

printf("%d年%d月%d日", year, month, day);

days = sum_day(month, day);

if(leap(year) && month>=3)

days = days + 1;

printf("是该年的第%d天.\n", days);

getch();

}

static int day_tab[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

int sum_day(int month, int day)

{

int i;

for(i=1; i<month; i++)

day = day + day_tab[i];

return day;

}

int leap(int year)

{

int leap;

leap = (year%4==0&&year%100!=0)