C++&QT day2

作业

1> 封装一个结构体,结构体中包含一个私有数组,用来存放学生的成绩,包含一个私有变量,用来记录学生个数,

提供一个公有成员函数,void setNum(int num)用于设置学生个数

提供一个公有成员函数:void input(),用来对所有学生的成绩进行输入工作

提供一个公有成员函数:void sort(),用来实现对存储的学生成绩进行降序排序

提供一个公有的成员函数:void show(),用于将所有学生的成绩展示出来

在主程序中,完成相关函数的调用

cpp 复制代码
#include <iostream>

using namespace std;
struct Stu
{
private:
    int *p=new int[128];
private:
    int stu_count;
public:
    //设置学生个数函数
    void setNum(int num)
    {
       stu_count=num;
       cout<<"学生人数是:"<<stu_count<<endl;
    }
public:
    //输入学生成绩函数
    void input()
    {
        for(int i=0;i<stu_count;i++)
        {
            cout<<"请输入学生成绩:"<<endl;
            cin>>p[i];
        }
    }
public:
    //学生成绩降序排序函数
    void sort()
    {
        int temp;
        for(int i=1;i<stu_count;i++)
        {
            for(int j=0;j<stu_count-i;j++)
            {
                if(p[j]<p[j+1])
                {
                    temp=p[j];
                    p[j]=p[j+1];
                    p[j+1]=temp;
                }
            }
        }
    }
public:
    //输出学生成绩函数
    void show()
    {
        cout<<"学生成绩是:";
        for(int i=0;i<stu_count;i++)
        {
            cout<<p[i]<<" ";
        }
        cout<<endl;
    }
};
int main()
{
    struct Stu stu;
    int num;
    cout<<"请输入学生个数:";
    cin>>num;
    stu.setNum(num);
    stu.input();
    stu.sort();
    stu.show();
    return 0;
}

2> 思维导图

相关推荐
ai_coder_ai3 分钟前
编写自动化脚本,在自己后端服务中使用Open Api进行设备相关操作
java·运维·自动化
硕风和炜21 分钟前
【LeetCode: 2492. 两个城市间路径的最小分数 + DFS】
java·算法·leetcode·深度优先·dfs·bfs·并查集
upgrador36 分钟前
基础知识:C++ STL构造函数的左闭右开惯例及其实现原理
开发语言·c++
格子软件40 分钟前
2026年GEO贴牌代理:分布式多级分账状态机源码深度解构
java·vue.js·分布式·vue·geo
我是一颗柠檬1 小时前
【Java项目技术亮点】加权轮询负载均衡算法
java·算法·负载均衡
灯厂码农1 小时前
C语言动态内存分配完全指南(malloc、calloc、realloc、free)
java·c语言·算法
尘中远2 小时前
【Qwt 7.0 系列】坐标轴与刻度系统 —— 刻度引擎、网格、图例与刻度朝内
qt·数据可视化·qcustomplot·qwt·工业软件·科学绘图
梦梦代码精3 小时前
电商系统不是技术堆叠:LikeShop如何用分层Hold住复杂业务?
java·docker·代码规范
凯瑟琳.奥古斯特3 小时前
K次取反最大化数组和解法(力扣1005)
开发语言·c++·算法·leetcode·职场和发展
负责的蛋挞3 小时前
异步HttpModule的实现方式
java·服务器·前端