A. 用C语言编写一个简单的成绩管理系统
(ps:没有自己编译过)
//我写 C++比较多
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#define TOTAL_STUD 1000
typedef struct stud {
char name[20];
int score;
} students[TOTAL_STUD],sorted[TOTAL_STUD];
void delstud (int i) {
students[i].name = "无效学生";
students[i].score = -999;
return;
}
#define show(listname,i)printf("%04d%s%d ",i,listname[i].name,listname[i].score);
int cmpfunc (const void * a, const void * b)
{
return ( *(stud*)a.score - *(stud*)b.score );
} // 本段代码修改自此处
void run(int menu) {
switch (menu) {
case 1:
char uname[20];
int uid,uscore;
printf("请输入学生姓名:");
scanf("%s",uname);
printf("
请输入学生学号:");
scanf("%d",&uid);
printf("
请输入学生成绩:");
scanf("%d",&uscore);
students[uid].name = uname;
students[uid].score = uscore;
printf("
插入成功!
");
break;
case 2:
int delid;
printf("要删除谁?学号?");
scanf("%d",&delid);
delstud(delid);
break;
case 3:
for (int i = 0; i < TOTAL_STUD; i++) {
strcpy(sorted[i].name,students[i].name);
sorted[i].score=students[i].score;
}
qsort(sorted,TOTAL_STUD,sizeof(stud),cmpfunc);
printf("学号 姓名 分数
");
for (int i = 0; i < TOTAL_STUD; i++) {
if (sorted[i].score > -900) show(sorted,i);
}
break;
case 4:
for (int i = 0; i < TOTAL_STUD; i++) {
if (students[i].score > -900) show(students,i);
}
break;
case 5:
int delid;
printf("要查询谁?学号?");
scanf("%d",&delid);
show(students,delid);
break;
default:
printf("-- %d 无此功能。请重试。--",menu);
}
return;
}
int main() {
int key = -1;
for (int i = 0; i < TOTAL_STUD; i++) {
delstud(i);
}
while (key != 0) {
printf("---成绩管理系统 V0.9 --- 请选择: 1 -- 录入 2 -- 删除 3 -- 排序输出 4 -- 不排序输出 5 -- 查询 0 -- 退出");
key=getch()-48;
if (key>0) run(key);
else {
printf("谢谢使用!再见!");
return 0;
}
}
return 0;
}
B. 用c语言编一简单在线考试系统
网络搜索 育仁在线考试系统 ,就能找到你需要的资料和方案