用二维数组、控制流程语句来完成学生成绩管理系统,基本实现成绩录入、成绩查询和成绩删除功能。C#输入
时间: 2024-06-10 21:05:39 浏览: 97
语言也可以,但请附上中文翻译。
使用二维数组来记录学生的姓名和成绩,使用控制流程语句实现成绩录入、查询和删除功能。
具体实现步骤:
1. 定义一个二维数组,用于存储学生姓名和成绩。
2. 实现成绩录入功能,即通过循环语句依次输入每个学生的姓名和成绩,并将其存入二维数组中。
3. 实现成绩查询功能,通过输入学生姓名或学号来查询该学生的成绩,并输出显示在屏幕上。
4. 实现成绩删除功能,可以通过输入学生姓名或学号来删除该学生的成绩信息,在二维数组中删除该学生的信息。
5. 根据需要可以添加其他功能,比如排序、成绩修改等。
示例代码如下(C语言):
```
#include <stdio.h>
#include <string.h>
#define MAX_STUDENT 100 // 最大学生数
int main()
{
char students[MAX_STUDENT][20]; // 存储学生姓名
float scores[MAX_STUDENT]; // 存储学生成绩
int numStudent = 0; // 学生人数
int i;
char name[20];
char operation;
while(1){
printf("\n请输入操作:\n");
printf("1.成绩录入\n");
printf("2.成绩查询\n");
printf("3.成绩删除\n");
printf("0.退出程序\n");
fflush(stdin);
scanf("%c",&operation);
switch(operation){
case '1': // 录入成绩
printf("请输入学生人数:\n");
scanf("%d",&numStudent);
for(i=0;i<numStudent;i++){
printf("请输入第%d个学生的姓名和成绩(用空格隔开):\n",i+1);
scanf("%s %f",students[i],&scores[i]);
}
printf("成绩录入成功!\n");
break;
case '2': // 查询成绩
printf("请输入要查询的学生姓名:\n");
scanf("%s",name);
for(i=0;i<numStudent;i++){
if(strcmp(students[i],name)==0){
printf("%s的成绩是:%.2f\n",name,scores[i]);
break;
}
}
if(i==numStudent){
printf("查无此人!\n");
}
break;
case '3': // 删除成绩
printf("请输入要删除的学生姓名:\n");
scanf("%s",name);
for(i=0;i<numStudent;i++){
if(strcmp(students[i],name)==0){
numStudent--;
for(int j=i;j<numStudent;j++){
strcpy(students[j],students[j+1]);
scores[j] = scores[j+1];
}
printf("成绩删除成功!\n");
break;
}
}
if(i==numStudent){
printf("查无此人!\n");
}
break;
case '0': // 退出程序
printf("程序已退出!\n");
return 0;
default:
printf("请输入正确操作指令!\n");
break;
}
}
return 0;
}
```
阅读全文