您的位置:

学生身份管理系统c语言,学生管理系统设计c语言

本文目录一览:

跪求c语言的学生信息管理

#include"stdio.h"

#include"stdlib.h"

#include"string.h"

#define N 3

typedef struct z1

{

char no[11];

char name[15];

int score[N];

float sum;

float average;

int order;

struct z1 *next;

}STUDENT;

STUDENT *init();

STUDENT *create();

STUDENT *del(STUDENT *h);

void print(STUDENT *h);

void search1(STUDENT *h);

void search2(STUDENT *h);

STUDENT *insert(STUDENT *h);

void sort(STUDENT *h);

void save(STUDENT *h);

void tongji(STUDENT *h);

int menu_select();

STUDENT *load();

void inputs(char *prompt,char *s,int count);

STUDENT *load();

main()

{

int i;

STUDENT *head;

head=init();

for(;;)

{

switch(menu_select())

{

case 0:head=init();break;

case 1:head=create();break;

case 2:head=insert(head);break;

case 3:save(head);break;

case 4:print(head);break;

case 5:search1(head);break;

case 6:head=del(head);break;

case 7:sort(head);break;

case 8:tongji(head);break;

case 9:search2(head);break;

case 10:exit(0);

}

}

}

int menu_select()

{

char *menu[]={"************菜单************",

"0. 初始化链表",

"1. 输入学生成绩",

"2. 插入学生成绩",

"3. 保存学生记录",

"4. 显示学生记录",

"5. 按学号查找学生信息",

"6. 删除指定学号的学生信息",

"7. 按某一门课对学生成绩排序",

"8. 统计某门课程的学生成绩",

"9. 按姓名查找学生信息",

"10. 退出系统"};

char s[3];

int c,i;

for(i=0;i=11;i++)

printf(" %s\n",menu[i]);

do

{

printf("\n请选择0~10中的某一个选项\n");

scanf("%s",s);

c=atoi(s);

}while(c0||c10);

return c;

}

STUDENT *init()

{

return NULL;

}

STUDENT *create()

{

int i;int s;

STUDENT *h=NULL,*info;

for(;;)

{

info=(STUDENT *)malloc(sizeof(STUDENT));

if(!info)

{

printf("\n内存不足");

return NULL;

}

inputs("输入学号:",info-no,11);

if(info-no[0]=='@')break;

inputs("输入姓名:",info-name,15);

printf("开始输入%d门课的成绩\n",N);

s=0;

for(i=0;iN;i++)

{

do{

printf("第%d门分数:",i+1);

scanf("%d",info-score[i]);

if(info-score[i]100||info-score[i]0)

printf("输入成绩错误,请重新输入:\n");

}while(info-score[i]100||info-score[i]0);

s=s+info-score[i];

}

info-sum=s;

info-average=(float)s/N;

info-order=0;

info-next=h;

h=info;

}

return h;

}

void inputs(char *prompt,char *s,int count)

{

char p[255];

do

{

printf(prompt);

scanf("%s",p);

if(strlen(p)count)

printf("\n太长了!\n");

}while(strlen(p)count);

strcpy(s,p);

}

void print(STUDENT *h)

{

int i=0;

STUDENT *p;

p=h;

printf("\n\n\n***********************学生***********************\n");

printf("|序号|学号 | 姓名 | 语文 | 英语 |数学 | 总分 |平均分 |名次 |\n");

printf("|---|-------|--------|----|----|----|------|------|---|\n");

while(p!=NULL)

{

i++;

printf("|%3d |%-10s|%-8s|%4d|%4d|%4d|%4.2f|%4.2f|%3d|\n",i,p-no,p-name,p-score[0],p-score[1],p-score[2],p-sum,p-average,p-order);

p=p-next;

}

printf("***********************end***********************\n");

}

STUDENT *del(STUDENT *h)

{

STUDENT *p,*q;

char s[11];

printf("请输入要删除的学生的学号\n");

scanf("%s",s);

q=p=h;

while(strcmp(p-no,s)p!=NULL)

{

q=p;

p=p-next;

}

if(p==NULL)

printf("\n链表中没有学号为%s的学生\n",s);

else

{

printf("\n\n\n***********************找到了***********************\n");

printf("|学号 | 姓名 | 语文 | 英语 | 数学 | 总分 | 平均分 | 名次 |\n");

printf("|----------|----------|----|----|----|------|------|---|\n");

printf("|%-10s|%-8s|%4d|%4d|%4d|%4.2f|%4.2f|%3d|\n",p-no,p-name,p-score[0],p-score[1],p-score[2],p-sum,p-average,p-order);

printf("***********************end***********************\n");

printf("请按任意键删除\n");

getchar();

if(p==h)

h=p-next;

else q-next=p-next;

free(p);

printf("\n已经删除学号为%s的学生\n",s);

printf("不要忘了保存数据\n");

}

return h;

}

void search1(STUDENT *h)

{

STUDENT *p;

char s[11];

printf("请输入你要查找的同学的学号\n");

scanf("%s",s);

p=h;

while(strcmp(p-no,s)p!=NULL)

p=p-next;

if(p==NULL)

printf("'n没有学号为%s的学生\n",s);

else

{

printf("\n\n\n***********************找到了***********************\n");

printf("|学号 | 姓名 | 语文 | 英语 | 数学 | 总分 | 平均分 | 名次 |\n");

printf("|----------|-----------|----|----|----|------|------|---|\n");

printf("|%-10s|%-8s|%4d|%4d|%4d|%4.2f|%4.2f|%3d|\n",p-no,p-name,p-score[0],p-score[1],p-score[2],p-sum,p-average,p-order);

printf("***********************end***********************\n");

}

}

void search2(STUDENT *h)

{

STUDENT *p;

char s[11];

printf("请输入你要查找的同学的姓名\n");

scanf("%s",s);

p=h;

while(strcmp(p-name,s)p!=NULL)

p=p-next;

if(p==NULL)

printf("\n没有姓名为%s的学生\n",s);

else

{

printf("\n\n\n***********************找到了***********************\n");

printf("|学号 | 姓名 | 语文 | 英语 | 数学 | 总分 | 平均分 | 名次 |\n");

printf("|----------|-----------|----|----|----|------|------|---|\n");

printf("|%-10s|%-8s|%4d|%4d|%4d|%4.2f|%4.2f|%3d|\n",p-no,p-name,p-score[0],p-score[1],p-score[2],p-sum,p-average,p-order);

printf("***********************end***********************\n");

}

}

STUDENT *insert(STUDENT *h)

{

STUDENT *p,*q,*info;

char s[11];

int s1,i;

printf("请输入插入点的学生学号\n");

scanf("%s",s);

printf("\n请输入新的学生信息\n");

info=(STUDENT *)malloc(sizeof(STUDENT));

if(!info)

{

printf("\n内存不足!");

return NULL;

}

inputs("输入学号:",info-no,11);

inputs("输入姓名:",info-name,15);

printf("请输入%d门课的分数\n",N);

s1=0;

for(i=0;iN;i++)

{

do{

printf("分数%d",i+1);

scanf("%d",info-score[i]);

if(info-score[i]100||info-score[i]0)

printf("输入数据有误,请重新输入\n");

}while(info-score[i]100||info-score[i]0);

s1=s1+info-score[i];

}

info-sum=s1;

info-average=(float)s1/N;

info-order=0;

info-next=NULL;

p=h;

q=h;

while(strcmp(p-no,s)p!=NULL)

{q=p;p=p-next;}

if(p==NULL)

if(p==h)

h=info;

else q-next=info;

else

if(p==h)

{

info-next=p;

h=info;

}

else

{

info-next=p;

q-next=info;

}

printf("\n已经插入了%s这个学生\n",info-name);

printf("----不要忘了存盘啊--\n");

return(h);

}

void save(STUDENT *h)

{

FILE *fp;

STUDENT *p;

char outfile[10];

printf("请输入保存文件的文件名,例如 c:\\f1\\te.txt:\n");

scanf("%s",outfile);

if((fp=fopen(outfile,"wb"))==NULL)

{

printf("不能打开文件\n");

exit(1);

}

printf("\n正在保存......\n");

p=h;

while(p!=NULL)

{

fwrite(p,sizeof(STUDENT),1,fp);

p=p-next;

}

fclose(fp);

printf("------保存成功!!!------\n");

}

void sort(STUDENT *h)

{

int i=0,j;

STUDENT *p,*q,*t,*h1;

printf("请输入要按哪门课程的编号来排序:(0.语文 1.数学 2.英语)\n");

scanf("%d",j);

h1=h-next;

h-next=NULL;

while(h1!=NULL)

{

t=h1;

h1=h1-next;

p=h;

q=h;

while(t-score[j]p-score[j]p!=NULL)

{

q=p;

p=p-next;

}

if(p==q)

{

t-next=p;

h=t;

}

else

{

t-next=p;

q-next=t;

}

}

p=h;

while(p!=NULL)

{

i++;

p-order=i;

p=p-next;

}

print(h);

printf("排序成功!!!\n");

}

void tongji(STUDENT *h)

{

STUDENT *p;

int a,b,i;

printf("请输入课程编号\n");

scanf("%d",i);

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

scanf("%d,%d",a,b);

p=h;

while(p!=NULL)

{

printf("\n\n\n***********************找到了***********************\n");

if(p-score[i]=ap-score[i]=b)

{

printf("|学号 | 姓名 | 语文 | 英语 | 数学 | 总分 | 平均分 | 名次 |\n");

printf("|--------|---------|----|----|----|------|------|---|\n");

printf("|%-10s|%-8s|%4d|%4d|%4d|%4.2f|%4.2f|%3d|\n",p-no,p-name,p-score[0],p-score[1],p-score[2],p-sum,p-average,p-order);

}

p=p-next;

}

printf("***********************end***********************\n");

}

用c语言编写一个学生学籍管理系统

#includeiostream

#includestring

#includefstream

#includeiomanip

using namespace std;

class student

{

protected:

int number;

char name[20];

char sex[6];

char place[20];

char nation[6];

char birth[20];

char party[10];

char id[20];

double score[3];

public:

student *next;

student(){ }

~student(){ }

char* getname(){ return name; }

int getnumber(){ return number;}

double getscore(int i) { return score[3];}

float getg(){ return (score[0]+score[1]+score[2]); }

void input()

{

int e=1;

cout"\t\t\t按提示输入:"endl;

cout"\t\t输入编号: ";

cinnumber;

cout"\t\t输入姓名: ";

cinname;

do

{

cout"\t\t输入性别: ";

cinsex;

if(strcmp(sex,"男")==0 || strcmp(sex,"女")==0)

{

cout"\t\t输入籍贯: ";

cinplace;

cout"\t\t输入民族: ";

cinnation;

cout"\t\t输入生日: ";

cinbirth;

cout"\t\t输入政治面貌: ";

cinparty;

cout"\t\t输入身份证号: ";

cinid;

cout"\t\t输入数学分数: ";

cinscore[0];

cout"\t\t输入英语分数: ";

cinscore[1];

cout"\t\t输入计算机分数: ";

cinscore[2];

e=0;

}

else

{

cout"\t\t\t无此类型性别!重新输入!"endl;

e=1;

}

}while(e);

return ;

}

void input(ifstream is)

{

isnumbernamesexplacenationbirthpartyid

score[0]score[1]score[2];

is.get();

}

void output()

{

cout"学生基本信息如下:"endl;

cout"编号:"number

" 姓名:"name

" 性别:"sex

" 籍贯:"place

" 民族:"nation

" 生日:"birth

" 政治面貌:"partyendl

"身份证号:"id

" 数学:"score[0]

" 英语:"score[1]

" 计算机:"score[2]

" 总分:"getg()endlendl;

}

void output(ofstream os)

{

ossetw(6)number

setw(15)name

setw(6)sex

setw(20)place

setw(6)nation

setw(20)birth

setw(20)party

setw(20)id

setw(6)score[0]

setw(6)score[1]

setw(6)score[2]endl;

}

};

class school

{

public:

school(){ head=new student; head-next=NULL; key=0; }

~school(){ delete head; }

void input();

void mend();

void del();

int find(student **p,int num,char *pn="^");

void found();

void show();

void count();

void save();

void begin();

void clear();

char mainmenu();

int getkey(){ return key;}

void setkey(int k){ key=k; }

private:

student *head;

int key;

};

//录入函数

void school::input()

{

student *p,*p2=NULL;

p=head;

int n;

while(p-next)

p=p-next;

while(n)

{

p2=new student;

p2-input();

p-next=p2;

p2-next=NULL;

p=p-next;

school::setkey(1);

cout"\t\t\t按1继续,按0返回 : ";

cinn;

}

}

//子查找函数

int school::find(student **p1,int num,char *pn)

{

student *p;

p=head;

while(p-next)

{

(*p1)=p;

if( (p-next)-getnumber()==num||!strcmp( (p-next)-getname(),pn ) )

return 1;

p=p-next;

}

return 0;

}

//查找函数

void school::found()

{

student *p;

int num=-1,n=9;

char name[20]="^";

do

{

cout"\t\t1:按编号查找,2:按姓名查找: ";

cinn;

}while(n1||n2);

if(n==1)

{

cout"\t\t\t输入编号: ";

cinnum;

}

if(n==2)

{

cout"\t\t\t输入姓名: ";

cinname;

}

if(!find(p,num,name) )

{

cout"\t\t找不到你要查找的内容!"endl;

return;

}

(p-next)-output();

}

//删除函数

void school::del()

{

student *p,*p2;

int num;

cout"\t\t\t输入编号: ";

cinnum;

if( !find(p,num,"^") )

{

cout"\t\t找不到你要删除的内容!"endl;

return;

}

(p-next)-output();

p2=p-next;

p-next=p2-next;

delete p2;

school::setkey(1);

}

//显示函数

void school::show()

{

student *p;

p=head;

while(p-next)

{

(p-next)-output();

p=p-next;

}

}

//修改函数

void school::mend()

{

student *p;

int num=-1,n;

char name[20]="^";

do

{

cout"\t\t1:按编号修改,2:按姓名修改: ";

cinn;

}while(n1||n2);

if(n==1)

{

cout"\t\t\t输入编号: ";

cinnum;

}

if(n==2)

{

cout"\t\t\t输入姓名: ";

cinname;

}

if( !find(p,num,name) )

{

cout"\t\t找不到你要修改的内容!"endl;

return;

}

(p-next)-output();

(p-next)-input();

school::setkey(1);

}

//保存函数

void school::save()

{

student *p;

p=head;

ofstream os("student.txt",ios::out);

if (school::getkey()==1)

{

while(p-next)

{

(p-next)-output(os);

p=p-next;

}

}

cout"\t\t\t文件已保存! "endl;

school::setkey(0);

}

//初始化函数

void school::begin()

{

student *p,*p2;

p=head;

clear();

long t;

ifstream is("student.txt",ios::in);

if(!is)

{

ofstream os("student.txt",ios::out);

os.close();

return ;

}

int num=-1;

while(1)

{

num=-1;

t=is.tellg();

isnum;

is.seekg(t);

if(num0)

{

is.close();

return;

}

p2=new student;

p2-input(is);

p-next=p2;

p2-next=NULL;

p=p-next;

}

}

//清空函数

void school::clear()

{

student *p,*p2;

p=head-next;

while( p )

{

p2=p;

p=p-next;

delete p2;

}

}

//统计函数

void school::count()

{

student *p;

p=head;

int n=0;

double g[3]={0,0,0};

float j[3]={0,0,0};

while(p-next)

{

p=p-next;

n++;

for(int i=0;i3;i++)

{

g[++i]=g[i]+( p-getscore(i) );

(p-getscore(i) )=60? j[i++] : 0 ;

}

}

cout"\t\t\b\b\b\b数学总分:"g[0]" 平均分:"g[0]/n

" 及格率:"j[0]/nendl"\t\t\b\b\b\b英语总分:"g[1]

" 平均分:"g[1]/n" 及格率:"j[1]/nendl

"\t\t\b\b\b\b计算机总分: "g[2]" 平均分: "g[2]/n

" 及格率:"j[2]/nendl;

}

//主选菜单函数

char school::mainmenu()

{

char n[6];

cout"\n\n ☆☆☆☆欢迎进入高校学籍管理系统☆☆☆☆"endlendl

" * * * * * * * * * * * * * * * * * * * * * * * * * * * *"endl

" * * * * * * * * * * * * * * * * * * * * * * * * * * * *"endl

" * * 1: 录入学生信息 * *"endl

" * * 2: 显示学生信息 * *"endl

" * * 3: 查找学生信息 * *"endl

" * * 4: 删除学生信息 * *"endl

" * * 5: 修改学生信息 * *"endl

" * * 6: 统计学生成绩 * *"endl

" * * 7: 保存学生信息 * *"endl

" * * 0: 退出系统 * *"endl

" * * * * * * * * * * * * * * * * * * * * * * * * * * * *"endl

" * * * * * * * * * * * * * * * * * * * * * * * * * * * *"endl

" 请选择:";

cinn;

return n[0];

}

//主函数

void main()

{

school pp;

int k=1;

char n;

pp.begin();

while(k==1)

{

n=pp.mainmenu();

switch(n)

{

case '1':pp.input(); break;

case '2':pp.show(); break;

case '3':pp.found(); break;

case '4':pp.del(); break;

case '5':pp.mend(); break;

case '6':pp.count(); break;

case '7':pp.save(); break;

case '0':

if(pp.getkey()==1)

{

cout"\t\t\t是否保存? 1 : 保存 0:不保存 : ";

cink;

if(k==1)

pp.save();

}

pp.clear();

k=0;

break;

}

}

}

C语言学生管理系统

#includestdio.h

#includestring.h

#includestdlib.h

#includeconio.h

#define max 20

typedef struct student //学生

{

char sno[max]; // 学号

char sname[max]; //姓名

char sex[max]; //性别

char age[max]; //年龄

char depart[max]; //系

char classs[max]; //班

char grade[max]; //年级

struct student* next;

} student;

student* head;

int LogOn() //登录模块,已实现输入密码不回显,如果中途发现输错某几位,可退格键重输

{

char username[max],password[max];

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

scanf("%s",username);

printf("\n请输入密码(最多15位):");

//开始以不回显且支持退格方式获取输入密码

int i=0;

while((i=0)(password[i++]=getch())!=13)//条件i=0是用于限制退格的范围

{

if(password[i-1]=='\b')//对退格键的处理

{

printf("%c%c%c",'\b','\0','\b');

i=i-2;

}

else

printf("*");

}

password[--i]='\0';

//已获取密码。验证用户身份

if(!strcmp(username,"zhang")!strcmp(password,"8147086"))

{

printf("\n登录成功!");

return 1;

}

else

return 0;

}

void regist()

{

char ch;

student *s,*ptr; //s用来建新结点,ptr用来暂存头结点

do

{

s=(student*)malloc(sizeof(student)); // 新建一个学生结点

printf("\n开始注册..."); //开始注册

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

scanf("%s",s-sno);

printf("\n请输入该学生的姓名:");

scanf("%s",s-sname);

printf("\n请输入该学生的性别:");

scanf("%s",s-sex);

printf("\n请输入该学生的年龄:");

scanf("%s",s-age);

printf("\n请输入该学生的系:");

scanf("%s",s-depart);

printf("\n请输入该学生所在的班:");

scanf("%s",s-classs);

printf("\n请输入该学生所在的年级");

scanf("%s",s-grade);

ptr=head;

head=s;//将新结点插入队头

s-next=ptr;

fflush(stdin);

printf("\n请问是否继续注册?(Y/N)");

scanf("%c",ch);

}while(ch=='Y'||ch=='y');

return;

}

void ElePrint(char str[]) //输出单个元素

{

if(str==NULL) exit(0);

printf("%s",str);

for(unsigned int i=0;i12-strlen(str);i++) printf(" ");//为了对齐输出,需插入一些空格

return;

}

int LinePrint(student *ptr) //输出一行

{

if(ptr==NULL) //检查传进来的指针

return 0;

printf("\n");

ElePrint(ptr-sno);

ElePrint(ptr-sname);

ElePrint(ptr-age);

ElePrint(ptr-sex);

ElePrint(ptr-depart);

ElePrint(ptr-classs);

ElePrint(ptr-grade);

return 1;

}

void print() //输出全部学生信息

{

student *ptr=head;

printf("\n学号 姓名 年龄 性别 系 班 年级 ");

while(ptr)

{

LinePrint(ptr);

ptr=ptr-next;

}

printf("\n");

return;

}

void search()//查询模块

{

int method;//查询方式

char no[max],name[max],departm[max],clss[max],grades[max]; //用来接收查询关键字

while(1)

{

printf("\n请选择查询方式");

printf("\n1.按学号查询");

printf("\n2.按姓名查询");

printf("\n3.按所在系查询");

printf("\n4.按所在班级查询");

printf("\n5.按所在年级查询");

printf("\n6.打印全部学生信息");

printf("\n7.返回主菜单\n");

scanf("%d",method);

student *p=head,*temp;

switch(method)

{

case 1:

printf("\n请输入要查询的学号:");

scanf("%s",no);

while(p)

{

if(!strcmp(p-sno,no))

break;

else

{

temp=p;

p=p-next;

}

}

printf("\n学号 姓名 年龄 性别 系 班 年级 ");

LinePrint(p);

break;

case 2:

printf("\n请输入要查询的姓名:");

scanf("%s",name);

printf("\n学号 姓名 年龄 性别 系 班 年级 ");

while(p)

{

if(!strcmp(p-sname,name))

LinePrint(p);

p=p-next;

}

break;

case 3:

printf("\n请输入学生所在的系:");

scanf("%s",departm);

printf("\n学号 姓名 年龄 性别 系 班 年级 ");

while(p)

{

if(!strcmp(p-depart,departm))

LinePrint(p);

p=p-next;

}

break;

case 4:

printf("\n请输入学生所在的班:");

scanf("%s",clss);

printf("\n请输入学生所在的年级:");

scanf("%s",grades);

printf("\n学号 姓名 年龄 性别 系 班 年级 ");

while(p)

{

if(!strcmp(p-classs,clss)!strcmp(p-grade,grades))

LinePrint(p);

p=p-next;

}

break;

case 5:

printf("\n请输入学生所在的年级:");

scanf("%s",grades);

printf("\n学号 姓名 年龄 性别 系 班 年级 ");

while(p)

{

if(!strcmp(p-grade,grades))

LinePrint(p);

p=p-next;

}

break;

case 6:

print();

break;

case 7:

return;

default:

printf("很抱歉,暂无此查询方式!");

break;

}

}

}

void modify()//修改学生信息

{

char num[max];

student *p=head;

printf("\n请输入要修改的学生的学号:");

scanf("%s",num);

while(p)

{

if(!strcmp(p-sno,num))

break;

else

p=p-next;

}

if(p==NULL)

{

printf("\n错误:没有此学生的信息!\n");

return;

}

LinePrint(p);

printf("\n请输入要修改的该学生的信息:");

printf("\n1.姓名");

printf("\n2.性别");

printf("\n3.年龄");

printf("\n4.所在的系");

printf("\n5.所在的班");

printf("\n6.所在的年级");

char name1[max],sex1[max],age1[max],depart1[max],class1[max],grade1[max];

int select;

fflush(stdin);

scanf("%d",select);

printf("\n请输入新的信息:");

switch(select)

{

case 1:

scanf("%s",name1);

strcpy(p-sname,name1);

break;

case 2:

scanf("%s",sex1);

strcpy(p-sex,sex1);

break;

case 3:

scanf("%s",age1);

strcpy(p-age,age1);

break;

case 4:

scanf("%s",depart1);

strcpy(p-depart,depart1);

break;

case 5:

scanf("%s",class1);

strcpy(p-classs,class1);

break;

case 6:

scanf("%s",grade1);

strcpy(p-grade,grade1);

break;

default:

printf("\nError!");

break;

}

LinePrint(p);

return;

}

void del()// 删除某学生的信息

{

student *p=head,*temp=head,*s;

char num1[max];

printf("\n请输入要删除的学生的学号:");

scanf("%s",num1);

while(p)//查找该学生所在的结点

{

if(!strcmp(p-sno,num1))

break;

else

{

temp=p;

p=p-next;

}

}//while

if(!p)

{

printf("\n不存在此学生的信息.");

return;

}

LinePrint(p);//输出该学生的信息

printf("\n请问真的要删除该学生的信息吗?(Y/N)");

char ch;

fflush(stdin);

scanf("%c",ch);

if(ch=='Y'||ch=='y')

{

s=p-next;

temp-next=s;

free(p);

printf("\n已经删除该学生的信息.");

}

return;

}

void sort() //排序模块。将学生记录按学号从小到大排列。用起泡排序算法实现

{

student *ptr,*s=head,*p;

int count=0,count1;

while(s)//统计链表结点个数

{

count++;

s=s-next;

}

for(int i=1;icount;i++)

{

ptr=head;

p=NULL;

count1=count-i; //用来控制每轮起泡排序的终点,即每次把学号最小的结点移到倒数第i个结点

while(ptrptr-next(count1--))

{

if(strcmp(ptr-sno,ptr-next-sno)0)

{

s=ptr-next;

ptr-next=s-next;

if(p==NULL) //ptr处于队头时

head=s;

else

p-next=s;

s-next=ptr;

p=s;

}

else

{

ptr=ptr-next;

if(p==NULL) //ptr处于队头时

p=head;

else

p=p-next;

}

}

}

return;

}

void quit()

{

char ch;

printf("\n真的要退出?(Y/N)");

fflush(stdin);

scanf("%c",ch);

if(ch=='Y'||ch=='y')

exit(0);

return;

}

int main()

{

int option;

printf("\nCopyright@2005 KongXinCai All rights reserved.");

printf("\n欢迎使用学生信息管理系统!\n");

//登录模块

int icheck=0;

while(icheck3)

{

if(LogOn()==0)

icheck++;

else

break;

}

if(icheck==3)

{

printf("\n连续登录三次不成功,退出!");

exit(0);

}

//系统界面

while(1)

{

printf("\n\n请选择需要的服务:");

printf("\n1.注册");

printf("\n2.查询");

printf("\n3.修改");

printf("\n4.删除");

printf("\n5.排序");

printf("\n7.求平均");

printf("\n6.退出\n");

scanf("%d",option);

switch(option)

{

case 1:

regist();

break;

case 2:

search();

break;

case 3:

modify();

break;

case 4:

del();

break;

case 5:

sort();

break;

case 6:

quit();

break;

}

}

return 0;

}

学生身份管理系统c语言,学生管理系统设计c语言

2022-11-26
c语言学生管理系统for结构,c语言写学生管理系统

2023-01-06
c语言学生成绩管理系统,c语言学生成绩管理系统课程设计

2023-01-07
c语言学生管理系统,c语言学生管理系统流程图

2022-12-02
c语言课设学生成绩信息管理系统,学生成绩管理系统 c语言

2023-01-07
学生信息管理系统c语言摘要,c语言中学生信息管理系统

2022-11-26
c语言做的学生成绩管理系统,c语言程序学生成绩管理系统

2022-11-29
c语言学生管理系统的删除模块,C语言编写学生管理系统

2022-11-30
c语言学生信息管理系统心得体会,基于c语言的学生信息管理系统

2022-12-01
c语言校友管理系统,用c语言写学生信息管理系统

2023-01-06
学生档案管理系统c语言代码,学生档案管理系统c语言代码查询

2023-01-04
学生信息管理系统c语言关键技术,c语言的学生信息管理系统

2022-11-23
学生考勤系统设计c语言源程序,C语言大学生考勤系统怎么做

2023-01-03
c语言信息系统,c语言程序管理系统

2022-11-27
c语言开发管理,c语言开发系统

2022-11-29
c语言课程设计,c语言课程设计学生成绩管理系统

2022-11-25
学生信息管理系统C语言代码详解

2023-05-21
包含c语言实训学生管理系统心得的词条

2023-01-06
c语言酒店管理系统小论文,c语言课程设计酒店管理系统

2023-01-04
外卖配送c语言,c语言外卖管理系统

2023-01-07