完整题干:

设计一个学生类,其中数据成员有学号、姓名、年龄、3门课程的成绩,以及若干成员函数。并利用这个类建立一个对象数组。(1)求第一门课的平均成绩;(2)找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩和平均成绩;(3)找出平均成绩在90分以上或全部课程成绩在85分以上的学生。分别编3个函数实现以上三个要求。

要求:

(1)使用构造函数实现对数据的输入。

(2)以上三个要求必须用成员函数实现。

(3)在头文件中完成类的声明,在.cpp中完成类的实现,在主文件(.cpp)中完成主函数编写。

序号

姓名

学号

政治

数学

专业课

1

白雪华

20190101

89

2

韩姣姣

20190102

88

3

张璐璐

20190103

90

4

张清晨

20190104

78

5

张博涵

20190105

79

6

朱玉玲

20190106

45

7

姜健康

20190107

85

8

王龙洋

20190108

55

9

马传皓

20190109

95

10

张振龙

20190110

94

个人答案:

头文件:

#define tou_h
#include <iostream>
#include <string>
using namespace std;
class Student
{
private:string Number;   //学号string Name; //姓名float Score1; //政治float Score2; //数学float Score3; //专业课
public:Student() {}void SetNum(string num) { Number = num; }void SetName(string name) { Name = name; }void SetScore(float a, float b, float c) { Score1 = a; Score2 = b; Score3 = c; }float GetScore1() { return Score1; }float GetScore2() { return Score2; }float GetScore3() { return Score3; }string Getnumber() { return Number; }float Avg() { return (Score1 + Score2 + Score3) / 3; }//判断是否有两门以上课程不及格bool two_fail(){int cnt = 0;if (Score1 < 60)cnt++;if (Score2 < 60)cnt++;if (Score3 < 60)cnt++;if (cnt >= 2){return true;}elsereturn false;}//平均成绩在90分以上或全部课程成绩在85分以上bool high(){if (Avg() >= 90)return true;else if (Score1 > 85 && Score2 > 85 && Score3 > 85){return true;}elsereturn false;}
};

源文件:

#include"11.h"
//(1)求第一门课的平均成绩
float Average(Student st[], int total)
{float sum = 0;for (int i = 0; i < total; i++){Student s = st[i];sum += st[i].GetScore1();}float avg = sum / total;cout << "第一门课(政治)的平均成绩是: " << avg <<'\n' << endl;return avg;
}
//(2)找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩和平均成绩
void Findtwo_fail(Student st[], int total)
{for (int i = 0; i < total; i++){if (st[i].two_fail()){cout << "学号: " << st[i].Getnumber() << '\n' << "政治: " << st[i].GetScore1() << '\n' << "数学: " << st[i].GetScore2() << '\n' << "专业课: " << st[i].GetScore3() << '\n' << "平均分:" << st[i].Avg() <<'\n' << endl;;}}
}
//(3)找出平均成绩在90分以上或全部课程成绩在85分以上的学生
void Findhigh(Student st[], int total)
{for (int i = 0; i < total; i++){if (st[i].high()){cout << "学号: " << st[i].Getnumber() << '\n' << "政治: " << st[i].GetScore1() << '\n' << "数学: " << st[i].GetScore2() << '\n' << "专业课: " << st[i].GetScore3() << '\n' << "平均分:" << st[i].Avg()<<'\n' << endl;}}
}
int main()
{Student st[10];//使用构造函数实现对数据的输入st[0].SetNum("20190101"); st[0].SetName("白雪华"); st[0].SetScore(89, 89, 85);st[1].SetNum("20190102"); st[1].SetName("韩姣姣"); st[1].SetScore(88, 42, 68);st[2].SetNum("20190103"); st[2].SetName("张璐璐"); st[2].SetScore(90, 90, 90);st[3].SetNum("20190104"); st[3].SetName("张清晨"); st[3].SetScore(78, 54, 90);st[4].SetNum("20190105"); st[4].SetName("张博涵"); st[4].SetScore(79, 76, 65);st[5].SetNum("20190106"); st[5].SetName("朱玉玲"); st[5].SetScore(45, 47, 90);st[6].SetNum("20190107"); st[6].SetName("姜健康"); st[6].SetScore(85, 87, 85);st[7].SetNum("20190108"); st[7].SetName("王龙洋"); st[7].SetScore(55, 23, 98);st[8].SetNum("20190109"); st[8].SetName("马传皓"); st[8].SetScore(95, 98, 78);st[9].SetNum("20190110"); st[9].SetName("张振龙"); st[9].SetScore(94, 90, 57);//对象数组Average(st, 10);cout << "有两门以上课程不及格的学生:" << endl;Findtwo_fail(st, 10);cout<<'\n';cout << "平均成绩在90分以上或全部课程成绩在85分以上的学生:" << endl;Findhigh(st, 10);cout<<'\n';system("pause");return 0;
}

结果:

习题:设计一个学生类,其中数据成员有学号、姓名、年龄、3门课程的成绩,以及若干成员函数。并利用这个类建立一个对象数组。相关推荐

  1. 习题 9.5 有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入10个学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课程成绩、平均分数)。

    C程序设计(第四版) 谭浩强 习题9.5 个人设计 习题 9.5 有10个学生,每个学生的数据包括学号.姓名.3门课程的成绩,从键盘输入10个学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数 ...

  2. 题9.5:有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输人10个 学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓 名、3门课程成绩、平均分数)。

    题目 本题是谭浩强<C程序设计课后习题>题9.5. 题目: 有10个学生,每个学生的数据包括学号.姓名.3门课程的成绩,从键盘输人10个 学生数据,要求输出3门课程总平均成绩,以及最高分的 ...

  3. C语言编程>第十一周 ⑥ 某学生的记录由学号、5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中。

    例题:某学生的记录由学号.5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出.请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中.请自己定义正确的形参.. 例如,若 ...

  4. C语言:有N个学生,每个学生有3门课程的成绩,从键盘输入以上数据(包括学号、姓名、3门课程的成绩),计算出平均成绩,将原有数据和计算出的平均成绩存放在磁盘文件stu_list.txt中。

    /*有N个学生,每个学生有3门课程的成绩,从键盘输入以上数据(包括学号.姓名.3门课程的成绩),计算出平均成绩,将原有数据和计算出的平均成绩存放在磁盘文件stu_list.txt中.*/ /*以5个学 ...

  5. 37.某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分放在记录的ave成员中。请自己定义正确的形参。

    37.某学生的记录由学号.8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出.请编写函数fun,它的功能是:求出该学生的平均分放在记录的ave成员中.请自己定义正确的形参. 例如,若学生的 ...

  6. 某学生的记录由学号、5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中。

    例题:某学生的记录由学号.5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出.请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中.请自己定义正确的形参.. 例如,若 ...

  7. 某班有5名同学,建立一个学生的简单信息表,包括学号、姓名、3门课程的成绩,编写程序,计算每名学生的平均成绩及名次。(30分) 题目内容: 某班有5名同学,建立一个学生的简单信息表,包括学号、姓名、3

    某班有5名同学,建立一个学生的简单信息表,包括学号.姓名.3门课程的成绩,编写程序,计算每名学生的平均成绩及名次.(30分) 题目内容: 某班有5名同学,建立一个学生的简单信息表,包括学号.姓名.3门 ...

  8. C语言:有十个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入10个学生数据,要求输出3门课程的总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课程成绩、平均分数)

    题目:有十个学生,每个学生的数据包括学号.姓名.3门课程的成绩,从键盘输入10个学生数据,要求输出3门课程的总平均成绩,以及最高分的学生的数据(包括学号.姓名.3门课程成绩.平均分数). 根据题目要求 ...

  9. 有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入10个学生数据 要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课程成绩)

    /*有10个学生,每个学生的数据包括学号.姓名.3门课程的成绩,从键盘输入10个学生数据 要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号.姓名.3门课程成绩)*/#include < ...

  10. 有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入10个学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课程成绩、平均分数)。

    有10个学生,每个学生的数据包括学号.姓名.3门课程的成绩,从键盘输入10个学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号.姓名.3门课程成绩.平均分数). 方法一: #inc ...

最新文章

  1. caffe-fast-rcnn(Caffe、FSRCNN、FastRCNN)
  2. adb.exe可能被其他程序关闭_木工中央除尘设备系统正式运行的操作程序
  3. 视频播放器的界面设计并实现播放器
  4. swoole 服务端heartbeat_check_interval心跳检测 客户端 swoole_timer_tick 发送心跳包 这里只是个demo参考
  5. php单例模式代码,php设计模式之单例模式代码
  6. 关注电子商务网站开发-《网站中常用的Jquery插件》
  7. iOS开发中常用的宏
  8. linux系统镜像怎么安装,linux系统安装,怎样安装linux系统制作方法
  9. 使用echarts来显示世界地图和全国地图,并且可以下钻层级
  10. Keil 编译器AC6中的LLVM编译原理
  11. 使用fmt:formatNumber 标签接收后端数据并格式化
  12. 《MetaSploit渗透测试魔鬼训练营》之WEB应用渗透技术
  13. springboot Possibly consider using a shorter maxLifetime value.
  14. word 导出编辑ftl_Java实现用Freemarker完美导出word文档(带图片)
  15. 计算机网络学习笔记<一>|工作必备|银行科技岗面试|内附八股面经|秋招提前批冲冲冲
  16. oracle 表分区详解
  17. 《Windows CE嵌入式开发入门——基于Xscale架构》 第9章 Windows CE BSP及驱动程序结构分析
  18. win10 前面板 耳机
  19. !important和@important
  20. 笔记本怎么查看hdmi版本_一文带你了解笔记本的外部接口:VGA、HDMI、DP、USB

热门文章

  1. (五)unity Shader之——————unity的光源类型和光照衰减
  2. 亿级流量架构演进实战 | 架构演进构建TCP长连接网关 04
  3. dw连接服务器文件夹,dw远程服务器根文件夹
  4. 研报精选230428
  5. 【编译原理-练习题-3】语法分析大题
  6. postman传递当前时间戳
  7. 信息管理系统设计与实现
  8. Xcode链接手机时 has conflicting provisioning settings.
  9. 如何安装NationalInstruments.NI4882
  10. 广东移动宽带dns服务器未响应,宽带连不上 dns 无响应