当前位置: 首页> 健康> 知识 > 【C++ Primer Plus习题】9.4

【C++ Primer Plus习题】9.4

时间:2025/7/13 22:07:44来源:https://blog.csdn.net/qq_74047911/article/details/141830016 浏览次数:0次

大家好,这里是国中之林!
❥前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看←

问题:

这里是引用

解答:
main.cpp

#include <iostream>
#include "sales.h"
using namespace std;
using namespace SALES;int main()
{Sales s1, s2;double de[QUARTERS] = { 12.1,32.1,42.1,51.1 };setSales(s1, de, QUARTERS);showSales(s1);cout << endl;setSales(s2);showSales(s2);return 0;
}

sales.h

#pragma once
namespace SALES
{const int QUARTERS = 4;struct Sales{double sales[QUARTERS];double average;double max;double min;};void setSales(Sales& s,  double ar[], int n);void setSales(Sales& s);void showSales(const Sales& s);
}

sales.cpp

#include "sales.h"
#include <iostream>using namespace std;
using namespace SALES;void SALES::setSales(Sales& s, double ar[], int n)
{double sum = 0;if (n >= QUARTERS){for (int i = 0; i < QUARTERS; i++){s.sales[i] = ar[i];}}else{for (int i = 0; i < n; i++){s.sales[i] = ar[i];}for (int i = n; i < QUARTERS; i++){s.sales[i] = 0;}}s.max = s.min = s.average = s.sales[0];for (int i = 0; i < QUARTERS; i++){sum += s.sales[i];if (s.max < s.sales[i]){s.max = s.sales[i];}if (s.min > s.sales[i]){s.min = s.sales[i];}}s.average = sum / QUARTERS;
}
void SALES::setSales(Sales& s)
{double ar[QUARTERS] = { 0.0 };int i = 0;do{cout << "请输入第" << i + 1 << "季度的销量:";cin >> ar[i];if (!cin){cin.clear();while (cin.get() != '\n'){continue;}cout << "输入有误,请重新输入:";cin >> ar[i];}i++;} while (i<QUARTERS);setSales(s, ar, QUARTERS);}
void SALES::showSales(const Sales& s)
{for (int i = 0; i < QUARTERS; i++){cout << "第" << i + 1 << "季度的销售额为: " << s.sales[i] << endl;}cout << "平均为: " << s.average << endl;cout << "最大值为: " << s.max << endl;cout << "最小值为: " << s.min << endl;
}

运行结果:
在这里插入图片描述

考查点:

  • 命名空间
  • 多文件

2024年9月2日20:56:02

关键字:【C++ Primer Plus习题】9.4

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: