在主函数编写一个提示菜单根据输入菜单的编号调用相应函数
时间: 2024-03-01 20:50:46 浏览: 50
好的,下面是一个示例程序,实现了一个简单的学生成绩管理系统菜单:
```c
#include <stdio.h>
void print_menu();
void input_scores(int scores[], int count);
void print_scores(int scores[], int count);
float average_score(int scores[], int count);
int highest_score(int scores[], int count);
int lowest_score(int scores[], int count);
int main() {
int scores[10];
int count = 0;
int choice = 0;
do {
print_menu();
scanf("%d", &choice);
switch (choice) {
case 1:
input_scores(scores, 10);
count = 10;
break;
case 2:
print_scores(scores, count);
break;
case 3:
printf("平均分:%.2f\n", average_score(scores, count));
break;
case 4:
printf("最高分:%d\n", highest_score(scores, count));
break;
case 5:
printf("最低分:%d\n", lowest_score(scores, count));
break;
case 6:
printf("再见!\n");
break;
default:
printf("无效的选项,请重新输入!\n");
break;
}
} while (choice != 6);
return 0;
}
void print_menu() {
printf("学生成绩管理系统菜单:\n");
printf("1. 输入成绩\n");
printf("2. 显示成绩\n");
printf("3. 计算平均分\n");
printf("4. 查找最高分\n");
printf("5. 查找最低分\n");
printf("6. 退出程序\n");
printf("请选择:");
}
void input_scores(int scores[], int count) {
int i;
printf("请输入 %d 个学生成绩:\n", count);
for (i = 0; i < count; i++) {
scanf("%d", &scores[i]);
}
}
void print_scores(int scores[], int count) {
int i;
printf("学生成绩如下:\n");
for (i = 0; i < count; i++) {
printf("%d ", scores[i]);
}
printf("\n");
}
float average_score(int scores[], int count) {
int i;
int sum = 0;
float average = 0.0;
for (i = 0; i < count; i++) {
sum += scores[i];
}
average = (float)sum / count;
return average;
}
int highest_score(int scores[], int count) {
int i;
int highest = scores[0];
for (i = 1; i < count; i++) {
if (scores[i] > highest) {
highest = scores[i];
}
}
return highest;
}
int lowest_score(int scores[], int count) {
int i;
int lowest = scores[0];
for (i = 1; i < count; i++) {
if (scores[i] < lowest) {
lowest = scores[i];
}
}
return lowest;
}
```
这个程序定义了一个 `print_menu` 函数,用于打印菜单,以及一些其他函数来执行用户选择的操作。在 `main` 函数中,程序使用 `do-while` 循环来不断显示菜单,读取用户的选择,然后执行相应的操作,直到用户选择退出程序。
在上面的示例程序中,我们定义了输入成绩、显示成绩、计算平均分、查找最高分和最低分等函数,以及一个 `print_menu` 函数来打印菜单。你可以根据自己的需求来添加、修改或删除这些函数。