C 定义时间类,包含时、分秒信息。

1、定义时间类,包含时、分秒信息。定义构造函数;重载加法运算符,实现两个时间相加(小时相加不考虑溢出);实例化两个时间类的对象,相加并输出结果。2、声明一个Circle(... 1、定义时间类,包含时、分秒信息。定义构造函数;重载加法运算符,实现两个时间相加(小时相加不考虑溢出);实例化两个时间类的对象,相加并输出结果。
2、声明一个Circle(圆类),包括数据成员radius(即半径),求周长的函数成员getCir()和求面积的成员getArea()。要求实现根据用户键盘输入的r值实例化一个Circle类的对象,求出其周长和面积并输出。
这是我的一个考题麻烦,会的老师教哈
展开
 我来答
百度网友b0e28cae4
推荐于2016-09-13 · TA获得超过4016个赞
知道大有可为答主
回答量:1275
采纳率:85%
帮助的人:610万
展开全部
/*
1、定义时间类,包含时橘兆、分秒信息。定义构造函数;
重载加法运算符,实现两个时间相加(小时相加不考虑溢出);实例化两个时间类的对象,相加并输出结果。
*/
#include <iostream>
using namespace std;
class Time
{
public:
Time(int h=0,int m=0,int s=0):hour(h),min(m),sec(s){}
// 重载输入
friend istream& operator >> (istream &is,struct Time &t)
{
cout<<"输入时:";is>>t.hour;
cout<<"输入分:";is>>t.min;
cout<<"输入秒:";is>>t.sec;
cout<<endl;
return is;
};
// 重载输出
friend ostream& operator << (ostream &os,const struct Time &t)
{
os.width(2);os<<t.hour<<":";
os.width(2);os<<t.min<<":";
os.width(2);os<<t.sec<<endl;
return os;
}
// 重载输加法
friend Time operator +(struct Time &t1,struct Time &t2)
{
int h=t1.hour+t2.hour;
int m=t1.min+t2.min;
int s=t1.sec+t2.sec;

m+=s/60;
s%=60;

h+=m/60;
m%=60;

return Time(h,m,s);
}
private:
int hour,min,sec;
};
int main(int argc, char *argv[])
{
Time t1,t2;
cin>>t1>>t2;
cout<<t1+t2;
return 0;
}

/*
2、声明一个Circle(圆类),包括数据成员radius(即半径),
求周长的函数成员getCir()和求面积的成圆此租员getArea()。
要求实现根据用户键盘输入的r值实例化一个Circle类的对象,求出其周长和扒冲面积并输出。
*/
#include <iostream>
#include <cmath>
const double PI=acos(-1);

using namespace std;

class Circle
{
public:
Circle(double r):radius(r){};
double getCir(){return 2*PI*radius;}
double getArea(){return PI*radius*radius;}
private:
double radius;
};
int main(int argc, char *argv[])
{
double radius;
cout<<"输入圆的半径:";
cin>>radius;

Circle circle(radius);
cout<<"半径为:"<<radius<<"的圆周长为:"<<circle.getCir() <<" ,面积为:" << circle.getArea();
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式