注册 登录
编程论坛 C++教室

定义一个构造函数时钟类要求:在clock类中,包括三个数据成员(时,分,秒)和一个构造函数(判断输入的数据是否满足时分秒的表示)和一个公有成员函数(调用输出初始

怨怨怨怨尤 发布于 2016-11-05 19:41, 4056 次点击
  定义一个构造函数时钟类    要求:在clock类中,包括三个数据成员(时,分,秒)和一个构造函数(判断输入的数据是否满足时分秒的表示)和一个公有成员函数(调用输出初始化的时间)
2 回复
#2
starlz2016-11-07 09:14
#include<iostream>
using namespace std;
class Clock
{
private:
    int hour, mintue, sec;
public:
    Clock() :hour(0), mintue(0), sec(0){}
    Clock(int x, int y, int z);
    void printc();
};
Clock::Clock(int x, int y, int z)
{
    if (x>=0&&x<=24&&y>=0&&y<=60&&z>=0&&z<=60)
    {
        hour = x; mintue = y; sec = z;
    }
    else cerr << "erro!";
}
void Clock::printc()
{
    cout << hour << ":" << mintue << ":" << sec<<'\n';
}
int main()
{
    Clock c,d(9,9,9);
    c.printc();
    d.printc();
    return 0;
}
#3
怨怨怨怨尤2016-11-09 15:41
#include <iostream>



class Clock
{
private:
    int hour;
    int min;
    int sec;
public:
    Clock();
    void SetHour(int a);
    void SetMin(int b);
    void SetSec(int c);
    void PrintTime();
};

void Clock::SetHour(int a)
{
    if(a>=0&&a<24)
    hour=a;
    else std::cout<<"小时不正确"<<std::endl;
}
void Clock::SetMin(int b)
{
    if(b>=0&&b<60)
    min=b;
    else std::cout<<"分钟不正确"<<std::endl;
}
void Clock::SetSec(int c)
{
    if(c>=0&&c<60)
    sec=c;
    else std::cout<<"秒数不正确"<<std::endl;
}
void Clock::PrintTime()
{
    std::cout<<hour<<":"<<min<<":"<<sec<<std::endl;
}

Clock::Clock()
{
    hour=0;
    min=0;
    sec=0;
}

int main()
{
    int hour;
    int min;
    int sec;
    Clock t;
    t.PrintTime();
    std::cout<<"输入小时"<<std::endl;
    std::cin>>hour;//
    std::cout<<"输入分钟"<<std::endl;
    std::cin>>min;//
    std::cout<<"输入秒数"<<std::endl;
    std::cin>>sec;//
    t.SetHour(hour);
    t.SetMin(min);
    t.SetSec(sec);
    t.PrintTime();
    return 0;
}
自己做出来了  
1