类与对象(三)

定义一个描述教师的类Teacher,数据成员包括工号(Num),姓名(Name、性别(Sex、家庭住址( Addr}、联系电话(Tel}, E-mail地址(Email )、职务(Headship )、职称(Post)和工资(Salary对于数据成员,要求用字符数组实现工号、姓名、家庭住址、联系电话、E-mail地址、职务和职称,用字符型量实现性别,用整型量实现工资。成员函数包括:①设置工号。②设置姓名。③设置性别。④设置家庭住址。⑤设置联系电话。⑥设置email地址。⑦设置职务。⑧设置职称。⑨设置工资。⑩输出一个教师的全部描述信息,函数原型是OutputInfo( )。在主函数中定义一个教师类对象,然后对所有成员函数进行测试。

 

代码如下:

#include <iostream>
#include <cstring>
using namespace std;
class Teacher
{
private:
char Num[15];
char Name[10];
char Addr[30];
char Tel[20];
char Email[30];
char Headship[10];
char Post[10];
char Sex;
int Salary;
public:
void SetNum(char []);
void GetNum(char *);
void SetName(char []);
void GetName(char *);
void SetSex(char);
char GetSex();
void SetAddr(char []);
void GetAddr(char *);
void SetTel(char []);
void GetTel(char *);
void SetEmail(char []);
void GetEmail(char *);
void SetHeadship(char []);
void GetHeadship(char *);
void SetPost(char []);
void GetPost(char *);
void SetSalary(int);
int GetSalary();
void OutputInfo()
{
cout<<"工号:"<<Num<<endl;
cout<<"姓名:"<<Name<<endl;
cout<<"性别:"<<Sex<<endl;
cout<<"家庭住址:"<<Addr<<endl;
cout<<"联系电话:"<<Tel<<endl;
cout<<"E-mail地址:"<<Email<<endl;
cout<<"职务:"<<Headship<<endl;
cout<<"职称:"<<Post<<endl;
cout<<"工资:"<<Salary<<"元"<<endl;
}
};
void Teacher::SetNum(char num[])
{
strcpy(Num,num);
}
void Teacher::GetNum(char *num)
{
strcpy(num,Num);
}
void Teacher::SetName(char name[])
{
strcpy(Name,name);
}
void Teacher::GetName(char *name)
{
strcpy(name,Name);
}
void Teacher::SetSex(char sex)
{
Sex=sex;
}
char Teacher::GetSex()
{
return Sex;
}
void Teacher::SetAddr(char addr[])
{
strcpy(Addr,addr);
}
void Teacher::GetAddr(char *addr)
{
strcpy(addr,Addr);
}
void Teacher::SetTel(char tel[])
{
strcpy(Tel,tel);
}
void Teacher::GetTel(char *tel)
{
strcpy(tel,Tel);
}
void Teacher::SetEmail(char ema[])
{
strcpy(Email,ema);
}
void Teacher::GetEmail(char *ema)
{
strcpy(ema,Email);
}
void Teacher::SetHeadship(char hs[])
{
strcpy(Headship,hs);
}
void Teacher::GetHeadship(char *hs)
{
strcpy(hs,Headship);
}
void Teacher::SetPost(char pot[])
{
strcpy(Post,pot);
}
void Teacher::GetPost(char *pot)
{
strcpy(pot,Post);
}
void Teacher::SetSalary(int sal)
{
Salary=sal;
}
int Teacher::GetSalary()
{
return Salary;
}

int main()
{
Teacher t1;
char Num[15],Name[10],Addr[30],Tel[20],Email[30],Headship[10],Post[10],Sex;
int Salary;
t1.SetNum("20181237890");
t1.GetNum(Num);
t1.SetName("X老师");
t1.GetName(Name);
t1.SetSex('M');
t1.GetSex();
t1.SetAddr("广东省广州市");
t1.GetAddr(Addr);
t1.SetTel("13812345678");
t1.GetTel(Tel);
t1.SetEmail("gdufs@gdufs.com");
t1.GetEmail(Email);
t1.SetHeadship("教师");
t1.GetHeadship(Headship);
t1.SetPost("高级教师");
t1.GetPost(Post);
t1.SetSalary(999999999);
t1.GetSalary();
t1.OutputInfo();
}

 

转载于:https://www.cnblogs.com/Daylight-Deng/p/10124565.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/265189.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenStack tokens id获取测试

转载于:https://www.cnblogs.com/heidsoft/p/3524711.html

Linux 内核获取、初次编译、源码目录分析

目录Linux 内核获取Linux 内核初次编译Linux 内核源码目录分析1、arch 目录2、block 目录3、crypto 目录4、Documentation 目录5、drivers 目录6、firmware 目录7、fs 目录8、include 目录9、init 目录10、ipc 目录11、kernel 目录12、lib 目录13、mm 目录Linux 内核获取 关于L…

PHP里10个鲜为人知但却非常有用的函数

PHP里有非常丰富的内置函数&#xff0c;很多我们都用过&#xff0c;但仍有很多的函数我们大部分人都不熟悉&#xff0c;可它们却十分的有用。这篇文章里&#xff0c;我列举了一些鲜为人知但会让你眼睛一亮的PHP函数。 levenshtein() 你有没有经历过需要知道两个单词有多大的不同…

学会阅读硬件的原理图、数据手册大全

参考&#xff1a; 郭天祥&#xff1a;https://www.bilibili.com/video/BV1DW411a7mz?p8 韦东山&#xff1a;https://www.bilibili.com/video/BV1ga4y1Y7PL?p4 https://www.bilibili.com/video/BV17g411F7oR?spm_id_from333.999.0.0 洋桃电子&#xff1a;https://www.bilibil…

解决替换weblogic的commons-fileupload.jar后引发的问题

为什么80%的码农都做不了架构师&#xff1f;>>> 上一篇博文中提到通过替换weblogic自带的commons-fileupload.jar来解决FileUpload类的NoSuchMethodError问题。在完成替换后&#xff0c;该问题得到顺利解决&#xff0c;但是也会引发其他的一些问题&#xff0c;下面…

Python for Data Analysis 学习心得(二) - pandas介绍

一、pandas介绍 本篇程序上篇内容&#xff0c;在numpy下面继续介绍pandas&#xff0c;本书的作者是pandas的作者之一。pandas是非常好用的数据预处理工具&#xff0c;pandas下面有两个数据结构&#xff0c;分别为Series和DataFrame&#xff0c;DataFrame之前我在一些实战案例中…

Euler:欧拉函数&素数筛

一、欧拉函数 欧拉函数是小于x的整数中与x互质的数的个数&#xff0c;一般用φ(x)表示。 通式&#xff1a; 其中p1, p2……pn为x的所有质因数&#xff0c;x是不为0的整数。比如x12&#xff0c;拆成质因数为122*2*3&#xff0c;12以内有1/2的数是2的倍数&#xff0c;那么有1-1/2…

大小端字节序

想起以前在汇编语言和数字逻辑的时候也有接触到一些这个概念&#xff0c;已经有点模糊了&#xff0c;搞不清楚哪个是低位在前哪个是高位在前。后来在Wiki和Google的帮助下也算摸清楚了一些Endianness的概念。 一、字节序的起源 在计算机中&#xff0c;字节序&#xff08;Endian…

docker 部署nginx 使用keepalived 部署高可用

一&#xff0e;体系架构 在Keepalived Nginx高可用负载均衡架构中&#xff0c;keepalived负责实现High-availability (HA) 功能控制前端机VIP&#xff08;虚拟网络地址&#xff09;&#xff0c;当有设备发生故障时&#xff0c;热备服务器可以瞬间将VIP自动切换过来&#xff0c…

虚拟字符设备驱动开发步骤

目录前言字符设备驱动简介内核驱动操作函数集合(file_operations结构体)字符设备驱动开发步骤.ko驱动模块的加载和卸载(module_init驱动入口、insmod驱动加载)字符设备注册与注销到内核register_chrdev(设备号、设备名) -- 很少用了实现设备的具体操作函数添加LICENSE 和作者信…

设计模式20——Mediator设计模式

2019独角兽企业重金招聘Python工程师标准>>> Mediator中介者设计模式是通过一个中介对象封装一系列关于对象交互行为. Mediator中介者设计模式中的角色如下&#xff1a; (1).中介者&#xff08;Mediator&#xff09;&#xff1a;抽象定义了“同事”&#xff08;co…

Linux LED驱动开发实验(直接操作寄存器 -- 实际开发很少这样做)

目录Linux 下LED 灯驱动原理地址映射(ioremap映射、iounmap释放)I/O 内存访问函数硬件原理图分析实验程序编写LED 灯驱动程序编写APP测试程序编写运行测试编译驱动程序和测试APP拷贝led.ko 和ledApp到指定目录加载led.ko 驱动模块到内核创建应用层“/dev/led”设备节点运行测试…

Strange Words 4

2019独角兽企业重金招聘Python工程师标准>>> abnormality 英[ˌbnɔːmləti] 美[ˌbnɔːrmləti] n.变态&#xff1b;反常&#xff1b;异常&#xff1b;畸形 tenor 英 [tenə(r)]  美 [tenər] n.大意&#xff1b;要旨&#xff1b;常规&#xff1b;男高音&…

新字符设备驱动实验(自动分配设备号、自动创建应用层设备节点、新字符设备注册到内核的结构体)

目录自动分配和释放设备号示例代码新的字符设备注册到内核方法字符设备结构体(前面的设备号也放进来)cdev_init结构体初始化函数cdev_add 添加到linux内核cdev_del内核注销函数自动创建应用层设备节点mdev 机制创建和删除类创建删除设备(生成/dev/xxx设备)参考示例(先删除设备再…

$Django importlib与dir知识,手写配置文件, 配置查找顺序 drf分页器drf版本控制

1 importlib与dir知识 # importlib简介动态导入字符串模块 # 常规导入 from ss.aa import b from ss import a print(b,type(b)) #<module ss.aa.b from F:\\python37\\pythonfiles\\ss\\aa\\b.py> #<class module># importlib动态导入py文件模块 import importli…

springMVC_07乱码及restful风格

乱码的解决 通过过滤器解决乱码问题:CharacterEncodingFilter 配置web.xml文件 <filter><filter-name>encoding</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><para…

[转】HTTP请求流程(二)----Telnet模拟HTTP请求

转自&#xff1a; http://www.cnblogs.com/stg609/archive/2008/07/06/1237000.html 上一部分"流程简介"&#xff0c; 我们大致了解了下HTTP请求的流程&#xff0c;这一篇我向大家介绍下如何利用Telnet来模拟Http请求---访问百度。 我们直接开始吧&#xff01; …

设备树下的LED驱动实验

目录设备树LED驱动原理硬件原理图分析实验程序编写修改设备树文件(根节点下添加好区分)LED灯驱动程序编写编写测试APP运行测试编译驱动程序和测试APP运行测试上一章我们详细的讲解了设备树语法以及在驱动开发中常用的OF 函数&#xff0c;本章我们就开始第一个基于设备树的Linux…

《现代操作系统》精读与思考笔记 第七章 多媒体

第七章部分内容与前几章内容关联很大&#xff0c;比如进程调度、磁盘调度、文件系统&#xff0c;而且多为实现细节&#xff0c;这里不详述。 1.帧数与闪烁&#xff08;P476&#xff09; 画面动作的平滑性不是完全由每秒的帧数决定的&#xff0c;而是由每秒不同画面的数目决定的…

pinctrl和gpio子系统实验(芯片原厂做的,类似STM32的HAL库,我们只需调用API来直接操作GPIO)

目录pinctrl子系统pinctrl子系统简介(半导体厂商写的)I.MX6ULL的pinctrl子系统驱动分析0、通过compatbile属性查找对应驱动文件1、PIN配置信息详解(获取寄存器地址)2、PIN 驱动程序流程讲解(流程图&#xff0c;了解)设备树中添加pinctrl节点模板(半导体厂商瑞芯微、海思厂商写的…