1.设计一个CStudent(学生)类,并使CStudent类具有以下特点:
a.有学生姓名、学号、程序设计、信号处理、数据结构三门课程的成绩;
b.全部信息由键盘输入;
c.通过成员函数统计学生平均成绩,当课程数量增加时,成员函数无须修改仍可以求取平均成绩;
d.输出学生的基本信息、各科成绩与平均成绩;
e.学生对象用链表存储;
f.统计不及格学生人数。

#include <iostream>
#include <cstring>
using namespace std;
#define course_num 3    //课程数量,当课程数量增加时,请更改此处
#define N course_numclass CStudentNode
{private:string name;        string number;float prog;       //程序设计float signal; //信号处理float data;       //数据结构
public:CStudentNode* next;CStudentNode(){cout << "请输入姓名\n" << "姓名:";cin >> name;cout << "\n请输入学号\n" << "学号:";cin >> number;cout << "请输入程序设计,信号处理,数据结构的成绩\n" << "成绩:";cin >> prog >> signal >> data;}//统计不及格人数int fail(){if (prog < 60 || signal < 60 || data < 60)return 1;elsereturn 0;}void Avrg(){cout << "平均分:\t" << (prog + signal + data) / N << endl;}void OutPut(){cout << "姓名:\t" << name << "\t学号:" << number << endl;cout << "成绩:\n" << "程序设计:\t" << prog << "\t信号处理:\t" << signal << "\t数据结构:\t" << data << endl;Avrg();}
};
class CStudentList
{private:CStudentNode* head;int length,failed;
public:CStudentList(){head = NULL;length = 1;failed = 0;head = new CStudentNode;}//添加学生信息void add(){CStudentNode* p = head;CStudentNode* q = new CStudentNode;while (p->next){p = p->next;}p->next = q;length++;}//显示学生信息void show(){CStudentNode* p = head;while (p){p->OutPut();p = p->next;}}//统计不及格人数void fail(){CStudentNode* p = head;while (p){if(p->fail()){failed++;}p = p->next;}cout << "不及格人数为:" << failed << endl;}
};
int main()
{CStudentList A;A.add();A.show();A.fail();
}

自己写实验报告时码的,网上找不到一样的program.
如有错误,还请大神们看到多多指教!!

C++ 设计一个CStudent(学生)类,用链表实现相关推荐

  1. c++_设计一个 Studnet(学生)类

    设计一个 Studnet(学生)类 1.基本信息:学号.姓名.性别.出生日期.年级.班级.院系.专业: 其中:基本信息为 private 属性,成员函数为 public 属性: 2.Student 类 ...

  2. 设计一个表示学生的类:Student,该类的属性包括name、age、scores(包含语文、数学和英语三科成绩,每科成绩的类型为整数),此外该类还有3个方法。

    设计一个表示学生的类:Student,该类的属性包括name.age.scores(包含语文.数学和英语三科成绩,每科成绩的类型为整数),此外该类还有3个方法. (1)获取学生姓名的方法:get_na ...

  3. 先设计一个基本账户类,再通过继承基本账户类设计一个储蓄账户类,储蓄账户 类中增加密码、地址、最小余额和利率等成员变量,并增加一些银行账户经常用到的成员函数。 要求: (1)类

    先设计一个基本账户类,再通过继承基本账户类设计一个储蓄账户类,储蓄账户 类中增加密码.地址.最小余额和利率等成员变量,并增加一些银行账户经常用到的成员函数. 要求: (1)类中的成员函数具有输入.输出 ...

  4. 定义一个Teacher(教师)类,和一个Student(学生)类

    定义一个Teacher(教师)类,和一个Student(学生)类,二者有一部分数据成员是相同的,例如num(号码),name(姓名),sex(性别).编写程序,将一个Student对象 转换为Teac ...

  5. 为什么写了value属性 jq赋值value值不显示_为什么 String 要设计成 final,又如何设计一个不可变类呢?...

    前面聊了聊面试必考 String 的坑,具体可以细看<你真的懂 Java 的 String 吗?>,也留下了一个疑问,为什么 String 要被设计成 final 呢?其实,如果你读的认真 ...

  6. 设计一个长方形的类,成员的变量有长与宽,成员函数要求周长与面积,然后进行测试。

    设计一个长方形的类,成员的变量有长与宽,成员函数要求周长与面积,然后进行测试. #include using namespace std; class cfx { private: float len ...

  7. 设计一个圆形的类即Circle类。

    题目内容: 设计一个圆形的类即Circle类,具体要求如下: (1) 创建一个圆形的类,即Circle类,添加radius一个成员变量(数据类型为double ),表示圆形的半径: (2) 定义一个有 ...

  8. 设计一个抽象类图形类,在该类中包含有至少两个抽象方法求周长和求面积,分别定义圆形类、长方形类、正方形类、三角形类来继承图形类,并实现上述两个方法

    设计一个抽象类图形类,在该类中包含有至少两个抽象方法求周长和求面积,分别定义圆形类.长方形类.正方形类.三角形类来继承图形类,并实现上述两个方法 设计抽象类 就要使用abstract关键字,抽象类中的 ...

  9. 7-3 三维向量运算设计一个三维向量类,实现向量加法、减法以及向量与标量的乘法和除法运算。

    7-3 三维向量运算 设计一个三维向量类,实现向量加法.减法以及向量与标量的乘法和除法运算.后面添加下面代码完成: 天杀的出题人,非得放个图片在这,放个代码块会死吗? 运行的时候,要把这张图片里的内容 ...

最新文章

  1. 转 mac svn用法
  2. 右键点“工作空间”窗口内空白部分,在弹出的菜单上勾选“Docking View / 停靠式”。然后双击程序窗口的窗棱,就是最上面那条蓝色边框
  3. JS 面向对象与原型
  4. 浅谈数据中的偏差问题和推荐系统去偏最新研究进展
  5. python查询天气
  6. 如何在 .NET 中使用 Kafka
  7. python sklearn 归一化_数据分析|Python特征工程(5)
  8. 51单片机点亮数码管
  9. uos命令_【持续更新】UOS个人版实用技巧集锦
  10. kubernetes集群搭建(二进制方式)
  11. 我的高拍仪自动阅卷系统
  12. 网络收包LRO GRO测试总结
  13. win7计算机所有软件无法运行程序,解决Win7应用程序无法启动的方法
  14. java全能速查宝典_MATLAB函数全能速查宝典 邓薇等 编著.pdf
  15. linux服务器巡检工作的意义,Linux服务器巡检报告
  16. 微信开放平台开发(一)
  17. 在windbg调试的时候 针对ecx和eax说明
  18. RestTemplate的用法
  19. Imperva WAF Bypass【翻译】
  20. 微型计算机原理实验程序,微机原理实验(含程序).doc

热门文章

  1. oppo怎么广告接入_OPPO渠道合作广告推广怎么做
  2. windows端口被占用怎么解决
  3. element ui使用折叠面板时产生的问题
  4. 颈痛、膝盖痛、腰痛…一秒缓解!年过40的人手一份~(收藏)
  5. SIFT特征提取实现地理位置的标注
  6. matlab画雪花,使用C++ OpenGL,完成Konx 雪花绘图
  7. ActivityThread和ApplicationThread
  8. U盘启动ubuntu出现黑屏下划线
  9. activiti工作流activiti-explorer在线设计器的整合
  10. Table ‘ecology.e9_para_group_concat_max_len‘ doesn‘t exist