ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:20.72KB ,
资源ID:5919861      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-5919861.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++程序的设计大作业含源代码Word文件下载.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

C++程序的设计大作业含源代码Word文件下载.docx

1、 void SetPersonSex(char *SexFromMain); void ShowPersonSex(); void ShowPersonAddress(); private: char Address25; char Sex2; 可以看到,在上面分别声明了四个成员函数和两个数据成员。四个成员函数的作用是对私有数据成员进行访问(包括输入和输出)。所以当建立了一个person类之后就可以通过它的对象来访问该类的数据成员。下面分别说明每一个成员函数的具体定义:(1) 设置(输入)人地址的成员函数: void person:SetPersonAddress(char *AddressF

2、romMain) strcpy(Address,AddressFromMain); 通过strcpy把字符指针的容送入person类中的数据成员Address。(2) 设置(输入)人性别的成员函数: void person:SetPersonSex(char *SexFromMain)strcpy(Sex,SexFromMain);通过strcpy把字符指针SexFromMain的容作为地址的存储单元中的容送入person类中Sex数据成员。(3) 输出地址成员函数:ShowPersonAddress() coutAddressendl;输出person类中的Address数据成员的容;(4)

3、 输出性别的成员函数:ShowPersonSex()Sex输出person类中的Sex数据成员的容;接下来就是person基类的派生类student类的部设计如下:class student: public personvoid SetStudentInformation(char*NameFromMain,char *StudentAddressFromMain,char *StudentSexFromMain,char *StudentNumberFromMain, int *score);void ShowStudentInformation();friend void FindStud

4、entNumber(student *data);friend void FindStudentName(student *data);int MathResult,EnglishResult,CResult,CompilationLanguageResult,DigitalLogicResult,MarksismResult; char StudentNumber25; char Name25; float Average; int total;当设计student派生类的时候,最主要的特点就是利用了“类”的一个特点继承。所以说派生出来的student类也具有基类person的一些特点。在继

5、承的方式上本人使用了共有继承方式(public),下面来给大家介绍student类的部构造:1 成员函数共有设置(输入)学生信息、输出学生信息等两个。还有一个非成员函数的一个函数,它为该student类的友元函数,其功能是实现查找。除此之外还有从基类person类继承下来的一些成员函数;2 数据成员分别为整形变量的学生成绩(包括数学成绩、英语成绩、C+成绩、汇编语言成绩、数字逻辑成绩、马克思哲学成绩等),字符数组的学生学号和学生以及整型变量的学生的总分和单精度变量的平均分;下面介绍student派生类中的各个成员函数的定义部分:设置(输入)学生信息的成员函数:Void student:SetS

6、tudentInformation(char*NameFromMain,char*StudentAddressFromMain,char* StudentSexFromMain,char *StudentNumberFromMain, int *score) strcpy(Name,NameFromMain); SetPersonAddress(StudentAddressFromMain); SetPersonSex(StudentSexFromMain); strcpy(StudentNumber ,StudentNumberFromMain); for(int i=0; i6; i+)

7、switch(i) case 0: MathResult=score0; case 1: EnglishResult=score1; case 2: CResult=score2; case 3: CompilationLanguageResult=score3; case 4: DigitalLogicResult=score4; case 5: MarksismResult=score5; total=MathResult+EnglishResult+CResult+CompilationLanguageResult+DigitalLogicResult+MarksismResult; A

8、verage=total/6.0; 可以看到在设计student类的输入成员函数时其部同时调用了从基类继承下来的一些成员函数,这就是继承的特点。下面将会详细地介绍该成员函数的功能: 首先是student类的两个字符数组变量学生和学生学号的赋值通过strcpy来直接实现,也就是可通过该类的成员函数来给数据成员赋值。还有两个数据成员是不能够被继承下来的基类的两个字符数组学生性别和家庭地址,它们是通过student派生类的成员函数中调用从基类person中继承下来的成员函数,从而改变对不能被继承下来的基类的数据成员赋值。接着就是对student类中自己的数据成员学生成绩的赋值,它们是通过一个简单的s

9、witch case语句来实现的。 输出学生信息的成员函数:void student:ShowStudentInformation()学生的基本信息如下: endl学生的:Name;学生的学号为:StudentNumber学生的家庭地址为: ShowPersonAddress();学生的性别为: ShowPersonSex();学生的考试课程成绩如下: cout学生的离散数学课程成绩为:MathResult分学生的英语课程成绩为:EnglishResult学生的C+课程成绩为:CResult学生的汇编语言课程成绩为:CompilationLanguageResult学生的数字逻辑课程成绩为:D

10、igitalLogicResult学生的马克思主义哲学课程成绩为:MarksismResult学生的总分为:total学生的平均分为:Averagefindnum; int i=0; for(i;iStuNum;i+) if(strcmp(datai.StudentNumber,findnum)=0) cout在第i+1个编号里有您查找的记录: datai.ShowStudentInformation(); if(strcmp(datai.StudentNumber,findnum)0)在编号里没有您查找的记录! 下面详细介绍student类的两个友元函数中的用查找的函数是如何的定义:void

11、 FindStudentName(student *data) char findname25;请输入:findname; if(strcmp(datai.Name,findname)=0) if(strcmp(datai.Name,findname)可以看出student类的两个友元函数即查找(分别用学号和)函数的定义都很相似,主要是算法是一致。因为在student类中数据成员学生和学生学号都是用字符数组来定义的,所以上面的两个分别用学号和来查找的函数的算法是基本一致的,只是一个是用student类的一个对象中里面的name()去查找,另一个是用student类的一个对象中里面的Studen

12、tNumber(学生)去查找。在整个查找函数先是在函数的参数表中声明student类的对象指针,在主函数main中当调用查找函数时把main函数中定义的student类的数组的首地址传送给查找函数。在查找函数中先定义一个字符数组,再提示用户输入要查找的学生的或学号,当或学号在相应的学生编号里的相应的name()和StudentNumber(学生学号)相等时查找便成功并提示用户该学号或为基本信息的学生信息输出在屏幕上,当不相等时查找不成功并提示用户没有找到学生的记录。下面介绍非成员函数即普通函数(程序运行时保持一个用户界面功能的函数): void paint() int i; 学生信息管理系统

13、for (i = 0;80; i+) putchar(%);(1) 输入学生的信息 (3)用学号查找学生基本信息 (2) 输出学生信息 (4)用查找学生基本信息 (0) 退出程序 备注:如果您还没有输入任何信息,请先输入信息再输出! 上面的普通函数只是一个简单的函数,其功能只是在屏幕上保持如下一个画面: 学生信息管理系统%(1) 输入学生的信息 (3)用学号查找学生基本信息(2) 输出学生信息 (4)用查找学生基本信息(0) 退出程序 备注: 接着给大家介绍主函数main的定义部分:void main() char StuSex2,StuName25 ,StuAddress25,StuNumb

14、er25; int StuScore6,ctrl; int i=0,j; student stuStuNum; paint();请选择一个序号 ctrl; while (ctrl != 0) switch(ctrl) case 1: for(i; i+ ) system(cls coutStuName;请输入学生的性别:StuSex;请输入学生的学号:StuNumber;请输入学生的家庭地址:StuAddress;请按顺序输入学生的考试成绩离散数学课程成绩:StuScore0;英语课程成绩:StuScore1;C+课程成绩:StuScore2;汇编语言课程成绩:StuScore3;数字逻辑课程

15、成绩:StuScore4;马克思主义哲学课程成绩:StuScore5; stui.SetStudentInformation(StuName,StuAddress,StuSex,StuNumber,StuScore); break; case 2: cout system( for(j=0; j main主函数的实现比较长,主要是因为在main函数中不仅仅定义了普通变量(基本变量)用来暂时存放从键盘输入的学生基本信息,还定义了student类的对象数组,且使用了while循环和switch case语句来不停地进行选择,case的每一个分句分别实现不同的功能,case 1主要实现输入,用for

16、循环来把student对象数组的每一个对象本别进行赋值;case 2主要实现输出功能,输出时用for循环调用每一个student数组对象的ShowStudentInformation()函数(输出学生信息的成员函数);case 3和case 4主要就是实现查找功能,只是因为查找函数不是student类的成员函数,所以可以直接调用函数,在实参表里写了student对象数组的首地址,把student对象数组的首地址传递给查找函数;程序源代码:#includeiomanipusing namespace std;const int StuNum=1;void person: strcpy(Addre

17、ss,AddressFromMain); strcpy(Sex,SexFromMain); void SetStudentInformation(char *NameFromMain,char *StudentAddressFromMain,char *StudentSexFromMain,char *StudentNumberFromMain, int *score); void ShowStudentInformation(); friend void FindStudentNumber(student *data); friend void FindStudentName(student *data); int MathResult,EnglishResult,CResult,CompilationLanguageResult,DigitalLogicResult,MarksismResult;SetStudentInformation(char *NameFromMain,char *StudentAddressFromMain,char* StudentSexFromMain,char *StudentNumberFromMain, int *score) strcpy(Name,NameFromMa

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2