C++ 数组操作:求和、最大值、最小值、平均值 (去除最大最小值)
#include
using namespace std;
int sum(int nums[]) { int s = 0; for (int i = 0; i < sizeof(nums) / sizeof(int); i++) s += nums[i]; cout << s << ' '; return s; }
int max(int nums[]) { int m = nums[0]; for (int i = 1; i < sizeof(nums) / sizeof(int); i++) if (nums[i] > m) m = nums[i]; return m; }
double maxDouble(double nums[]) { double m = nums[0]; for (int i = 1; i < sizeof(nums) / sizeof(double); i++) if (nums[i] > m) m = nums[i]; return m; }
int min(int nums[]) { int m = nums[0]; for (int i = 1; i < sizeof(nums) / sizeof(int); i++) if (nums[i] < m) m = nums[i]; return m; }
double average(int nums[]) { cout << 'a ' << (double(sum(nums))) << ' b ' << (sizeof(nums) / sizeof(int) - 2) << endl; return (double(sum(nums)) - max(nums) - min(nums)) / (sizeof(nums) / sizeof(int) - 2); }
int main() { int n, m, x[] = {4, 7, 2, 6, 10, 7}; cout << sum(x); cin >> n >> m; double averages[n]; int nums[m]; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cin >> nums[j]; } averages[i] = average(nums); cout << averages[i] << endl; } cout << setprecision(2) << maxDouble(averages); return 0; }
中文
现在这个程序有一点问题内容:,请问你需要什么样的帮助?
如果你能提供更多的细节或错误信息,我可以更好地帮助你。
原文地址: https://www.cveoy.top/t/topic/oFjP 著作权归作者所有。请勿转载和采集!