c语言程序设计实验报告

一、实验目的:

        1、掌握C语言的数据类型和变量的声明。

        2、掌握不同类型数据之间赋值的规律。

        3、掌握C语言的运算符和表达式的使用。

        4、熟悉C程序的编辑、编译、连接和运行的过程。

二、学习要求

        (1)了解继承在面向对象程序设计中的重要作用。

        (2) 理解继承与派生的概念。

        (3)掌握派生类构造函数的定义。

 三、实验内容

        要求定义一个基类Person,它有3个protected的数据成员:姓名、性别、年龄;创建Person类的公有派生类Employee,增加两个数据成员: 基本工资 basicSalary, 请假天数leaveDays。为它们定义构造函数和显示数据成员信息的成员函数show()。

四、基本知识

什么是继承

​        继承是面向对象软件技术当中的一个概念,与多态、封装共为面向对象的三个基本特征。继承可以使得子类具有父类的属性和方法或者重新定义、追加属性和方法等。  ​

什么是派生

        在C++中,所谓“继承”就是在一个已存在的类的基础上建立一个新的类。已存在的类称为“基类(base class)”或“父类(father class)”,新建的类称为“派生类(derived class)”或“子类(son class )”。         一个新类从已有的类那里获得其已有特性,这种现象称为类的继承。通过继承,一个新建子类从已有的父类那里获得父类的特性。从另一角度说,从已有的类(父类)产生一个新的子类,称为类的派生。类的继承是用已有的类来建立专用类的编程技术。派生类继承了基类的所有数据成员和成员函数,并可以对成员作必要的增加或调整。一个基类可以派生出多个派生类,每一个派生类又可以作为基类再派生出新的派生类,因此基类和派生类是相对而言的。一代一代地派生下去,就形成类的继承层次结构。相当于一个大的家族,有许多分支,所有的子孙后代都继承了祖辈的基本特征,同时又有区别和发展。与之相仿,类的每一次派生,都继承了其基类的基本特征,同时又根据需要调整和扩充原 有的特征。         以上介绍的是最简单的情况:一个派生类只从一个基类派生,这称为单继承(single inheritance),这种继承关系所形成的层次是一个树形结构,如图所示。

        一个派生类不仅可以从一个基类派生,也可以从多个基类派生。也就是说,一个派生类可以有一个或者多个基类。一个派生类有两个或多个基类的称为多重继承(multiple inheritance)。关于基类和派生类的关系,可以表述为派生类是基类的具体化,而基类则是派生类的抽象。

五、实验步骤

 代码如下:

首先,我们先写person类:

#include

using namespace std;

class Person

{

public:

void get_value()

{

cin>>name>>sex>>age;

}

void show()

{

cout << "name: " << name << endl;

cout << "sex: " << sex << endl;

cout << "age: " << age << endl;

}

protected:

char name;

char sex;

int age;

};

下面就是主函数及作用域:

class Employee:public Person

{

public:

void get_value1();

void show1();

private:

float basicSalary;

int leaveDays;

};

void Employee::get_value1()

{

get_value();

cin>>basicSalary>>leaveDays;

}

void Employee::show1()

{

show();

cout << "basicSalary: " <

cout << "leaveDays: " <

}

int main()

{

Employee p;

p.get_value1();

p.show1();

return 0;

}

 实验结果

         cin和cout是c++中的标准输入输出流。

一、cin

  cin的一般用法:

  cin>>变量a>>变量b>>变量c;

        cin会自动辨别变量的类型,如a可以是char,b可以是int,c可以是float。

        接收字符串时,遇到空格,tab键和换行符都会结束接收。

        cin.getline()可以接收空格,cin.getline(char*,int,char),内有三个参数,第一个表示要接收的字符串,第二个表示接收字符个数,第三个表示结束字符。当第三个省略时默认结束字符为'\0'。

二、cout

   cout的一般用法:

   cout<<表达式1<<表达式2<<表达式3;

        如要换行可使用 cout<

        和cin一样,cout会自动检测表达式类型输出。

相关文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: