1.菜单选择 设计一个用于统计一个班学生成绩的程序,需要完成以下功能: 1)输入学生成绩信息 2)按总平均成绩排序 3)按学号排序 4)输出学生成绩表 5)结束退出 根据以上描述,编写程序输出功能菜单,输入菜单选择,根据选择执行对应功能,每个功能只显示该功能名称,例如选2,则输出:“现在执行按总平均成绩排序功能!”
时间: 2024-02-17 16:01:14 浏览: 19
当然,我可以帮你设计一个菜单选择程序。以下是程序代码:
```python
print("学生成绩管理系统")
print("1. 输入学生成绩信息")
print("2. 按总平均成绩排序")
print("3. 按学号排序")
print("4. 输出学生成绩表")
print("5. 退出")
choice = input("请输入您的选择(1-5): ")
if choice == '1':
print("现在执行输入学生成绩信息功能!")
elif choice == '2':
print("现在执行按总平均成绩排序功能!")
elif choice == '3':
print("现在执行按学号排序功能!")
elif choice == '4':
print("现在执行输出学生成绩表功能!")
elif choice == '5':
print("程序已退出。")
else:
print("输入错误,请重新输入!")
```
你可以根据自己的需要修改菜单选项和对应的功能。
相关问题
设计一个用于统计一个班学生成绩的程序,需要完成以下功能: 1)输入学生成绩信息 2)按总平均成绩排序 3)按学号排序 4)输出学生成绩表 5)结束退出 根据以上描述,编写程序输出功能菜单,输入菜单选择,根据选择执行对应功能,每个功能只显示该功能名称,例如选2,则输出:“现在执行按总平均成绩排序功能!”
好的,这是一个比较典型的学生成绩管理系统,我可以帮您设计。以下是程序代码:
```python
# 定义学生类
class Student:
def __init__(self, name, id, scores):
self.name = name
self.id = id
self.scores = scores
# 定义输出格式
def __str__(self):
return f'{self.id}\t{self.name}\t{self.scores["Chinese"]}\t{self.scores["Math"]}\t{self.scores["English"]}\t{self.scores["Total"]:.2f}'
# 定义主程序
def main():
students = []
while True:
# 输出菜单
print("1. 输入学生成绩信息")
print("2. 按总平均成绩排序")
print("3. 按学号排序")
print("4. 输出学生成绩表")
print("5. 结束退出")
# 获取用户选择
choice = input("请输入菜单编号:")
# 执行对应功能
if choice == "1":
name = input("请输入学生姓名:")
id = input("请输入学生学号:")
Chinese = float(input("请输入语文成绩:"))
Math = float(input("请输入数学成绩:"))
English = float(input("请输入英语成绩:"))
total = Chinese + Math + English
scores = {"Chinese": Chinese, "Math": Math, "English": English, "Total": total}
student = Student(name, id, scores)
students.append(student)
print("学生成绩信息输入成功!\n")
elif choice == "2":
students.sort(key=lambda x: x.scores["Total"], reverse=True)
print("现在执行按总平均成绩排序功能!\n")
elif choice == "3":
students.sort(key=lambda x: x.id)
print("现在执行按学号排序功能!\n")
elif choice == "4":
# 输出表头
print("学号\t姓名\t语文\t数学\t英语\t总分")
for student in students:
print(student)
print("\n")
elif choice == "5":
print("程序结束,谢谢使用!")
break
else:
print("菜单编号输入有误,请重新输入!\n")
if __name__ == '__main__':
main()
```
您可以将代码保存为一个.py文件并运行,程序会依次输出菜单,根据用户选择执行对应功能。其中,学生信息通过`Student`类进行封装,可以更方便地进行排序和输出。
用java设计一个用于统计一个班学生成绩的程序,需要完成以下功能: 1)输入学生成绩信息 2)按总平均成绩排序 3)按学号排序 4)输出学生成绩表 5)结束退出 根据以上描述,编写程序输出功能菜单,输入菜单选择,根据选择执行对应功能,每个功能只显示该功能名称,例如选2,则输出:“现在执行按总平均成绩排序功能!”
好的,以下是实现以上功能的Java代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = 0; // 学生数
int choice = 0; // 菜单选择
Student[] students = null; // 学生数组
while (true) {
System.out.println("学生成绩管理系统菜单:");
System.out.println("1. 输入学生成绩信息");
System.out.println("2. 按总平均成绩排序");
System.out.println("3. 按学号排序");
System.out.println("4. 输出学生成绩表");
System.out.println("5. 结束退出");
System.out.print("请选择功能(1-5):");
choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.print("请输入学生数:");
n = scanner.nextInt();
students = new Student[n];
for (int i = 0; i < n; i++) {
System.out.print("请输入第" + (i + 1) + "个学生的学号和成绩(用空格隔开):");
int id = scanner.nextInt();
int score = scanner.nextInt();
students[i] = new Student(id, score);
}
System.out.println("学生成绩信息输入完成!");
break;
case 2:
if (students == null) {
System.out.println("请先输入学生成绩信息!");
break;
}
sort(students, 1);
System.out.println("按总平均成绩排序完成!");
break;
case 3:
if (students == null) {
System.out.println("请先输入学生成绩信息!");
break;
}
sort(students, 2);
System.out.println("按学号排序完成!");
break;
case 4:
if (students == null) {
System.out.println("请先输入学生成绩信息!");
break;
}
printTable(students);
break;
case 5:
System.out.println("退出程序!");
return;
default:
System.out.println("选择错误,请重新选择!");
break;
}
}
}
/**
* 按指定方式排序
* @param students 学生数组
* @param type 排序方式,1表示按平均成绩排序,2表示按学号排序
*/
private static void sort(Student[] students, int type) {
for (int i = 0; i < students.length - 1; i++) {
for (int j = i + 1; j < students.length; j++) {
if (type == 1) {
// 按平均成绩排序
if (students[i].getAverageScore() < students[j].getAverageScore()) {
Student temp = students[i];
students[i] = students[j];
students[j] = temp;
}
} else if (type == 2) {
// 按学号排序
if (students[i].getId() > students[j].getId()) {
Student temp = students[i];
students[i] = students[j];
students[j] = temp;
}
}
}
}
}
/**
* 输出学生成绩表
* @param students 学生数组
*/
private static void printTable(Student[] students) {
System.out.println("学号\t成绩");
for (int i = 0; i < students.length; i++) {
System.out.println(students[i].getId() + "\t" + students[i].getAverageScore());
}
}
}
/**
* 学生类
*/
class Student {
private int id; // 学号
private int[] scores; // 成绩数组
public Student(int id, int... scores) {
this.id = id;
this.scores = scores;
}
/**
* 获取学号
* @return 学号
*/
public int getId() {
return id;
}
/**
* 获取平均成绩
* @return 平均成绩
*/
public double getAverageScore() {
double sum = 0;
for (int i = 0; i < scores.length; i++) {
sum += scores[i];
}
return sum / scores.length;
}
}
```
以上代码实现了菜单选择功能,可以输入学生成绩信息,按总平均成绩排序,按学号排序,输出学生成绩表和结束退出。在排序时,可以按总平均成绩或学号排序,输出学生成绩表时,会按照学号从小到大的顺序输出。