
将流程图改写成“输入—平均值—最高分—最低分—优秀人数—输出”的代码形式
#include<iostream>
using namespace std;
void showMenu()//菜单功能
{
cout << "\t*************************" << endl;
cout << "\t***** 1、输入数据 *****" << endl;
cout << "\t***** 2、平均值 *****" << endl;
cout << "\t***** 3、最高分 *****" << endl;
cout << "\t***** 4、最低分 *****" << endl;
cout << "\t***** 5、优秀人数 *****" << endl;
cout << "\t***** 6、输出数据 *****" << endl;
cout << "\t***** 0、退出 *****" << endl;
cout << "\t*************************" << endl;
}
void Init_S(int A[], int len)
{
cout << "请输入成绩:" << endl;
for (int i = 0; i < len; i++)
{
int value = 0; cin >> value;
A[i] = value;
}
}
int average_S(int A[],int len)
{
int sum = 0,ave= 0;
for (int i = 0; i < len; i++)
{
sum += A[i];
}
ave = sum / len;
return ave;
}
int max_S(int A[],int len)
{
int max = A[0];
for (int i = 1; i < len; i++)
{
if (max < A[i]) max = A[i];
else max = max;
}
return max;
}
int min_S(int A[],int len)
{
int min = A[0];
for (int i = 1; i < len; i++)
{
if (min > A[i]) min = A[i];
else min = min;
}
return min;
}
int count_S(int A[], int len)
{
int count = 0;
int mid = average_S(A, len);
for (int i = 0; i < len; i++)
{
if (A[i] > mid) count++;
}
return count;
}
void disply_S(int A[],int len)
{
for (int i = 0; i < len; i++)
{
cout << A[i] << " ";
}
}
int main()
{
showMenu();
int n = 0;
cout << "总人数为:"; cin >> n;
int *score=new int[n];
cout << endl;
while (1) {
int command = 0;
cout << "输入选择的功能:"; cin >> command;
switch (command)
{
case 1: {
Init_S(score, n);
break;
}
case 2: {int avg = average_S(score, n); cout << "平均成绩为:" << avg << endl;
break; }
case 3: {int M = max_S(score, n); cout << "成绩最大值为:" << M << endl;
break; }
case 4: {int m = min_S(score, n); cout << "成绩最小值为:" << m << endl;
break; }
case 5: {
int C = count_S(score, n);
cout << "大于平均值则定为优秀" << endl;
cout << "优秀人数为:" << C << endl;
break;
}
case 6: {cout << "输出所有成绩:" << endl;
disply_S(score, n);
cout << endl;
break;
}
case 0:cout << "欢迎下次使用" << endl; return 0;
}
}
}
