第八章作业(1. 第八章:日期类 2. 第八章:三角形类 3.成绩类Score 4.学生成绩类 5.学生成绩类2)

这篇博客介绍了C++编程中的几个类实现,包括日期类、三角形类、成绩类及其扩展。内容涵盖如何定义数据成员、构造函数、计算函数以及输出方法。日期类涉及时间差计算,三角形类涉及线段和三角形的表示及面积计算,成绩类则关注学生成绩的输入、计算和输出。
摘要由CSDN通过智能技术生成

1. 第八章:日期类

【问题描述】

    设计一个日期类(Date),用来实现日期的操作。包括一个空构造函数,三个成员函数,其余所需自行决定。        

    用成员函数setDate()用来给Date类设置日期。

    用成员函数isLeapYear()用来判断是否是闰年。

    用成员函数getSkip(Date o)用来计算两个日期之间相差的天数。

【输入形式】

    输入两个日期,输入格式参考样例。

【输出形式】

    判断两个日期是否是闰年,以及两个日期的间隔天数,输出格式参考样例。

【样例输入】

    2012 10 20

    2017 11 07

【样例输出】

    2012 is leap year.

    2017 is not leap year.

    The skip of two date is 1844.

注意:时间差始终为正数。

#include <iostream> 
using namespace std;
class Date
{
   
private:
	int year;
	int month;
	int day;
public:
	Date ()  {
   year=0,month=0,day=0;}
	void setDate(int y,int m,int d)
	{
   
		year=y;
		month=m;
		day=d;
	}
	void isLeapyear()
	{
   
		if(year%400==0||(year%4==0&&year%100!=0))
		cout<< year<<" is leap year."<<endl;
		else  cout<<year<<" is not leap year."<<endl;
	}
	int  Skip()
	{
   
		int sum=0 ,i,j;
		int a[12]={
   31,28,31,30,31,30,31,31,30,31,30,31};
		int b[12]={
   31,29,31,30,31,30,31,31,30,31,30,31};
		for(i=0;i<month-1;i++)
		{
   
	    if(year%400==0||(year%4==0&&year%100!=0))
	         sum+=b[i];
	    else 
	         sum+=a[i];
	    }
	    for(j=0;j<year;j++)
	    {
   
		if(j%400==0||(j%4==0&&j%100!=0))
	       sum+=366;
	    else  sum+=365; 
	    }
	    sum=sum+day;
		r
  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值