(1)定义一个分数类Score。它有3个数据成员:
Chinese       //语文课成绩
English       //英语课成绩
Mathematics   //数学课成绩
2个构造函数:无参的和带参数的
3个成员函数:是否带参数根据需要自定
sum()         //计算三门课总成绩
print()        //输出三门课成绩和总成绩
modify()      //修改三门课成绩
(2)定义一个学生类Student。它有3个数据成员:
Num           //学号
Name          //姓名
MyScore       //成绩
2个构造函数:无参的和带参数的
3个成员函数:是否带参数根据需要自定
sum()         //计算某学生三门课总成绩
print()        //输出某学生学号、姓名和成绩
modify()      //修改某学生学号、姓名和成绩
(3) 在主函数中,先定义一个学生类对象数组,再通过for循环给对象数组赋上实际值,最后输出对象数组个元素的值。

不多说了,直接上三段式

头文件

#include<iostream>
#include<string>
using namespace std;class Score//分数类,存语数外成绩
{
public:int Chinese;int English;int Math;int add;Score();//构造函数Score(int a,int b,int c);void Sum();void print();void modify();
};class Student//学生类
{
public:int Num;string name;Score myScore;//以Score为类定义对象Student();//构造函数Student(int d,string e,int a,int b,int c);void Sum();void print();void modify();
};

f(x)的实现

#include<iostream>
#include<string>
#include"白兰地兑豆瓣酱.h"
using namespace std;
// 个人每个函数都是对应CV写的,感觉都可以一一代用,可能是笔者编程能力不足吧Score::Score()//Score初始赋值
{Chinese=0;English=0;Math=0;add=0;
}Score::Score(int a,int b,int c)//Score再赋值
{Chinese=a;English=b;Math=c;Sum();
}Student::Student()//Student初始赋值
{name=" ";Num=0;myScore.Chinese=0;myScore.English=0;myScore.Math=0;Sum();
}Student::Student(int d,string e,int a,int b,int c)//Student再赋值
{name=e;Num=d;myScore.Chinese=a;myScore.English=b;myScore.Math=c;
}void Score::Sum()//求和部分
{add=Chinese+English+Math;
}void Student::Sum()//求和部分
{myScore.add=myScore.Chinese+myScore.English+myScore.Math;
}void Score::print()//打印函数
{cout<<"语文成绩:"<<Chinese<<endl;cout<<"英语成绩:"<<English<<endl;cout<<"数学成绩:"<<Math<<endl;cout<<"总成绩:"<<add<<endl;
}void Student::print()//打印函数
{cout<<"姓名:"<<name<<endl;cout<<"学号:"<<Num<<endl;cout<<"语文成绩:"<<myScore.Chinese<<endl;cout<<"英语成绩:"<<myScore.English<<endl;cout<<"数学成绩:"<<myScore.Math<<endl;cout<<"总成绩:"<<myScore.add<<endl;
}void Score::modify()//定义函数
{int a;int b;int c;cout<<"请输入学生的语文成绩,英语成绩,数学成绩:"<<endl;cin>>a>>b>>c;Chinese=a;English=b;Math=c;Sum();
}void Student::modify()//定义函数
{int d; string e;int a;int b;int c;cout<<"请输入学生的姓名:"<<endl;cin>>e;cout<<"请输入学生的学号:"<<endl;cin>>d;cout<<"请输入学生的语文成绩:"<<endl;cin>>a;cout<<"请输入学生的英语成绩:"<<endl;cin>>b;cout<<"请输入学生的数学成绩:"<<endl;cin>>c;name=e;Num=d;myScore.Chinese=a;myScore.English=b;myScore.Math=c;Sum();
}

主函数来咯

include<iostream>
#include<string>
#include"白兰地兑豆瓣酱.h"
using namespace std;int main()
{Student a[10];//定义数组int i,j;cout<<"请输入学生人数:";//得知循环数cin>>i;cout<<endl;for(j=0;j<i;j++)//循环赋值{a[j].modify();}for(j=0;j<i;j++)//循环输出{a[j].print();}return 0;
}

感谢观看

C++学习记录8:定义一个分数类Score和学生类Student相关推荐

  1. C++学习记录2:定义一个描述学生基本情况的类

    定义一个描述学生基本情况的类,数据成员包括姓名.学号.英语.数学.计算机成绩.成员函数包括设置姓名.学号和三门课程的成绩.输出数据.以及求平均值.设计主函数,在主函数里调用设置"姓名.学号和 ...

  2. 一个有趣的算法问题:如何定义一个分数类

    一个来自于C++程序设计的经典问题.如何定义一个分数类,实现分数的约分化简,分数之间的加法.减法.乘法.除法四则运算? 1.初见 刚看到这道题的时候,第一感觉是挺简单的啊,就是基本的面向对象,定义对应 ...

  3. 用Java编写约分最简公式_一个有趣的算法问题:如何定义一个分数类

    一个来自于C++程序设计的经典问题.如何定义一个分数类,实现分数的约分化简,分数之间的加法.减法.乘法.除法四则运算? 1.初见 刚看到这道题的时候,第一感觉是挺简单的啊,就是基本的面向对象,定义对应 ...

  4. 1、猜数字游戏:一个类A有两个成员变量v、num,v有一个初值100。定义一个方法guess,对A类的成员变量v,用num进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。在main方法

    定义一个类,其中封装成员变量v-猜数的目标, num-猜测的数据 guess方法根据num和v比对结果生成对应的提示信息 import java.util.Scanner; public class ...

  5. [Python学习]PycURL简单学习 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source …...

    [Python学习]PycURL简单学习 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source - [Python学习] ...

  6. 1.JAVA猜数字游戏: 一个类A有两个成员变量v、num,v有一个初值100。 定义一个方法guess,对A类的成员变量v,用num进行猜。 *如果num比v大则提示大了,反之则提示小了.

    思路:  * 1.创建一个类,定义两个成员变量v和num,v是固定值所以直接赋值,num是键盘录入的.  * 2.定义一个setNum类,将来通过对象调用将键盘录入接收的数据进行设置  * 3.创建一 ...

  7. 定义一个点(Point)的类,x和y分别为第一象限的像素点,输入一些这样的点,然后按照升序输出这些点集(比较x2+y2的大小)。

    Point类 import java.util.ArrayList;//定义一个点(Point)的类,x和y分别为第一象限的像素点,输入一些这样的点,然后按照升序输出这些点集(比较x2+y2的大小). ...

  8. c#语言编程:定义person类,再派生学生类如何存放学生的成绩,C#定义全班学生成绩类,包括姓名,学号,C++成绩,英语成绩,数学成绩,平均成绩...

    满意答案 兄弟咱写了1个小时,格式规范,且经过严密测试,完成你所需要功能,且还有人性化设计,并且为你提供了可视化测试,我为你考虑的周到吧,不懂就问我 努力吧~~~ usingSystem; using ...

  9. 用CIL写程序:定义一个叫“慕容小匹夫”的类

    前文回顾: <用CIL写程序:你好,沃尔德> <用CIL写程序:写个函数做加法> 前言: 今天是乙未羊年的第一天,小匹夫先在这里给各位看官拜个年了.不知道各位看官是否和匹夫一样 ...

最新文章

  1. 如何自学python语言-我是如何学习Python语言?
  2. 全局变量声明的规范化
  3. 推荐系统炼丹笔记:阿里DMIN多重兴趣网络
  4. mysql maxconnections 最大值,MySQL性能优化之max_connections配置参数浅析
  5. 注释标记的原则_它关系到平台如何标记操纵的媒体。 这是设计师应遵循的12条原则。
  6. Java中的复合设计模式
  7. c语言 字符转int型,C语言—类型之间的转换
  8. 当自己犹豫时,坐下来读一读
  9. linux ll 按时间排序_Linux基本操作
  10. ip 地址 192.168.1.255 代表( )。_如何批量ping大量ip地址?一个软件搞定
  11. Android原生人脸识别Camera2示例
  12. Note Of Effective C++ 、More Effective C++ And Effective Modern C++
  13. “某某云词典” – 纠结的初体验
  14. 拯救节日邮件!专属这个节假季的EDM营销方案
  15. 电子书下载:CRM Fundamentals
  16. 2020年三月计算机二级甘肃报名官网,2020年3月甘肃计算机二级考试报名时间
  17. Revit中添加水平仰视平面图及水平剖面
  18. 获取realsense内参
  19. 台湾大学郭彦甫matlab百度云,台湾国立大学郭彦甫Matlab教程笔记(23) linear systems...
  20. 【ubuntu20.04上openvino安装及环境配置】

热门文章

  1. 【全网最详细yolov6】yoloV6调试记录(含训练自己的数据集及常见报错及解决方法)--持续更新ing
  2. Python的编码与解码
  3. 更快学习编程的7个重要技巧
  4. SQL中的case when函数使用
  5. 在Windows 7下最大限度地发挥多显示器的魔力
  6. 猜客魔盒二次开发盲盒APP趣味功能讲解(二)
  7. 为啥是我得癌症?(不管什么行业,请耐心读完)
  8. Nginx教程 安装
  9. 百度搜索框提示词下拉列表的制作方法
  10. 调用ibm mq_在IBM OpenWhisk中提供和调用动作的简便方法