您的当前位置:首页正文

简单学生信息管理系统源代码

来源:个人技术集锦
实验六 线性结构

【实验目的】

1.学会定义线性表的顺序存储结构和单链表存储结构 2.熟悉顺序表、单链表的基本操作和具体的函数定义 3.学会线性表的应用

【实验内容】

⒈简单学生信息管理系统

实现一个简单的学生信息管理系统。学生的主要信息包括学号、姓名、年龄、语文、数学、英语成绩;其上能完成添加、删除、查找、显示等基本功能;分别用顺序表、链表方式实现。 编写程序如下:

#include #include #include #include struct student {

int id;

char name[10];

int age;

int english[10];

int math[20];

int chinese;

char nativeplace[50]; }st[50]; int i=0;

void shuru() { char a; do{

printf(\"\\n请输入学号:\");

scanf(\"%d\

fflush(stdin);

printf(\"\\n请输入姓名:\");

gets(st[i].name);

printf(\"\\n\") ;

printf(\"请输入年龄:\");

scanf(\"%d\

fflush(stdin);

printf(\"\\n请输入英语:\");

scanf(\"%d\

fflush(stdin);

printf(\"\\n请输入数学:\");

scanf(\"%d\

printf(\"\\n请输入语文:\");

scanf(\"%d\ fflush(stdin);

printf(\"\\n请输入籍贯:\"); gets(st[i].nativeplace);

printf(\"\\n是否继续输入另外一个学生信息?(y/n)\"); fflush(stdin); a=getchar(); i++; }

while(a=='y' && i<=50); }

void xianshi() {

int j;

printf(\"\学号\姓名\年龄\英语\数学\\语文\籍贯\\n\");

for(j=0;jprintf(\"\%d\%s\%d\%d\%d\%d\%s\\n\

st[j].id,st[j].name,st[j].age,st[j].english,st[j].math,st[j].chinese,st[j].nativeplace); }

void paixu() //按年龄从大到小排序函数 {

int j,k; int temp;

for(j=0;jfor(k=0;kif(st[k].agetemp=st[k].age;

st[k].age=st[k+1].age; st[k+1].age=temp; } } }

xianshi(); //排序后输出 }

void chazhao() {

int m,j;

char name[20],b; do {

printf(\"\\n请输入想查找的学生姓名:\"); fflush(stdin); gets(name); for(m=0;m{

if(strcmp(name,st[m].name)==0) {

printf(\"\\n\您查找的学生在第%d个位置找到了!!!\\n\ break; } }

if(m>=20)

printf(\"\\n\没有找到这个学生!!!\\n\"); else {

printf(\"\学号\姓名\年龄\英语\数学\\语文\籍贯\\n\");

printf(\"\%d\%s\%d\%d\%d\%d\%s\\n\

st[j].id,st[j].name,st[j].age,st[j].english,st[j].math,st[j].chinese,st[j].nativeplace); }

printf(\"\\n是否查找另一个学生的信息?(y/n)\"); fflush(stdin); b=getchar();

}while(b=='y'); }

void shanchu() {

char name[20],c; int a,b; do {

printf(\"\\n请输入要删除的学生姓名:\\n\"); fflush(stdin); gets(name);

for(a=0;aif(strcmp(name,st[a].name)==0) break; }

for(b=a;bst[b]=st[b+1]; if(a>i)

printf(\"\没有找到这个学生!!!\\n\");

else { i--;

xianshi(); }

printf(\"\\n是否继续删除另一个学生信息?(y/n) \"); fflush(stdin); c=getchar(); }while(c=='y'); }

void charu() {

shuru(); paixu(); }

void main() //主函数

{

int change; do{

system(\"cls\");

printf(\"============================学生===================================\\n\"); printf(\"\\一: 输入学生信息\\n\"); printf(\"\\二: 显示学生信息\\n\"); printf(\"\\三: 查找学生信息\\n\"); printf(\"\\四: 删除学生信息\\n\"); printf(\"\\五: 插入学生信息\\n\"); printf(\"\\六: 退出程序\\n\"); fflush(stdin);

printf(\"\\请输入功能选项:\"); scanf(\"%d\switch(change) {

case 1:

信息管理系统

shuru(); break; case 2:

xianshi(); break; case 3:

chazhao(); break; case 4:

shanchu(); break; case 5:

charu(); break; case 6: break; }

getch();

}while(change!=6); }

因篇幅问题不能全部显示,请点此查看更多更全内容