C++ 股票交易数据管理:用类实现股票信息存储和最大涨幅计算

本示例使用 C++ 类来存储和管理股票交易数据,包括交易日、最高价、最低价、开盘价和收盘价。使用静态成员函数实现查找当月涨幅最大的股票功能。

  1. Stock类的定义:
class Stock {
private:
    int day; // 交易日序号
    double highestPrice; // 当日最高价
    double lowestPrice; // 当日最低价
    double openPrice; // 当日开盘价
    double closePrice; // 当日收盘价
    static double maxIncrease; // 最大涨幅
public:
    Stock(int d, double h, double l, double o, double c); // 构造函数
    double getIncrease(); // 计算涨幅的成员函数
    static void findMaxIncrease(Stock* stocks, int size); // 找出涨幅最大的股票的静态成员函数
};

// 构造函数
Stock::Stock(int d, double h, double l, double o, double c) {
    day = d;
    highestPrice = h;
    lowestPrice = l;
    openPrice = o;
    closePrice = c;
}

// 计算涨幅的成员函数
double Stock::getIncrease() {
    return (closePrice - openPrice) / openPrice * 100;
}

// 找出涨幅最大的股票的静态成员函数
double Stock::maxIncrease = -9999; // 初始化为一个极小值

void Stock::findMaxIncrease(Stock* stocks, int size) {
    for (int i = 0; i < size; i++) {
        double increase = stocks[i].getIncrease();
        if (increase > maxIncrease) {
            maxIncrease = increase;
        }
    }
}
  1. 主函数中的代码:
int main() {
    const int days = 30; // 本月交易天数
    Stock stocks[days]; // 存储本月每天的股票信息

    // 假设已经从外部读取了每天的股票信息并存储在stocks数组中

    // 计算每天的涨幅并输出
    for (int i = 0; i < days; i++) {
        double increase = stocks[i].getIncrease();
        cout << '第' << i+1 << '天的涨幅为:' << increase << '%' << endl;
    }

    // 找出涨幅最大的股票
    Stock::findMaxIncrease(stocks, days);
    cout << '本月涨幅最大的股票涨幅为:' << Stock::maxIncrease << '%' << endl;

    return 0;
}
  1. 在主函数中调用Stock类的静态成员函数findMaxIncrease即可找出涨幅最大的股票。

说明:

  • 该代码假设已经从外部读取了每天的股票信息并存储在stocks数组中。
  • findMaxIncrease函数使用静态数据成员maxIncrease记录最大涨幅,并通过遍历stocks数组找到最大值。

代码解析:

  • Stock类包含五个私有数据成员:day、highestPrice、lowestPrice、openPrice、closePrice,分别表示交易日序号、当日最高价、当日最低价、当日开盘价和当日收盘价。
  • Stock类还包含一个静态数据成员maxIncrease,用于记录最大涨幅。
  • Stock类包含三个公有成员函数:构造函数、getIncrease函数和findMaxIncrease函数。
  • 构造函数用于初始化Stock对象。
  • getIncrease函数用于计算股票的涨幅。
  • findMaxIncrease函数用于查找涨幅最大的股票。
  • 主函数首先定义一个大小为30的Stock数组,用于存储本月每天的股票信息。
  • 然后,主函数遍历stocks数组,计算每天的涨幅并输出。
  • 最后,主函数调用findMaxIncrease函数,找出涨幅最大的股票。

总结:

本示例展示了如何使用C++类来管理股票交易数据,并利用静态成员函数查找最大涨幅。代码清晰简洁,易于理解,可以作为学习C++类的示例。

C++ 股票交易数据管理:用类实现股票信息存储和最大涨幅计算

原文地址: https://www.cveoy.top/t/topic/ne4t 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录