C++习题 输入输出--保护继承

C++习题 输入输出--保护继承

时间: 1ms        内存:128M

描述:

 Student类含有私有数据成员:num,name,sex,公有成员函数: 输入函数get_value()和输出函数display()。采用私有保护方式实现类Student1,增加数据成员:age,addr,成员函数:get_value_1()和display_1()。在程序运行时输入num,name,sex,age,addr的值,调用输出函数输出以上5个数据的值。

输入:

 输入num,name,sex,age,addr的值

输出:

 输出num,name,sex,age,addr的值

示例输入:

1001 zhang m 21 shanghai

示例输出:

num: 1001
name: zhang
sex: m
age: 21
address: shanghai

提示:

参考答案(内存最优[1092]):

#include <stdio.h>
#include <stdlib.h>
int main()
{
	char c[99],a,b[99];
	int d,e;
	scanf("%d %s %c %d %s",&d,c,&a,&e,b);
	printf("num: %d\nname: %s\nsex: %c\nage: %d\naddress: %s\n",d,c,a,e,b);
	return 0;
}

参考答案(时间最优[0]):


#include <iostream>
using namespace std;
class Student
{
public:
    void get_value()
    {
        cin>>num>>name>>sex;
    }
    void display( )
    {
        cout<<"num: "<<num<<endl;
        cout<<"name: "<<name<<endl;
        cout<<"sex: "<<sex<<endl;
    }
private :
    int num;
    string name;
    char sex;
};
class Student1:protected Student
{
public:
    void get_value1();
    
    void display1();
    
private :
    int age;
    char addr[20];
   
};
void Student1::get_value1()
 
 {
	 get_value();
     cin>>age>>addr;
 }
 void Student1::display1( )
    {   
	 display();
     cout<<"age: "<<age<<endl;
     cout<<"address: "<<addr<<endl;
        
    }

int main()
{
    Student1 stud1;
    stud1.get_value1();
    stud1.display1();
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注