好文档 - 专业文书写作范文服务资料分享网站

学生信息管理系统c语言版源代码

天下 分享 时间: 加入收藏 我要投稿 点赞

#include #include #include #include #define N 1000 typedef struct student {

int number; char name[20]; int grade; int gaoshu; int yingyu; int jisuanji; int sum; }STUDENT;

STUDENT student[N]; int shuliang=0; void menu(); void fhzjm() {

char biaozhi[20]; printf(\

printf(\还需要操作么?如果需要操作请输入:yes,否则请输入:no\\n\

scanf(\

if(strcmp(biaozhi,\{ menu(); }

else if(strcmp(biaozhi,\exit(0); else {

printf(\请输入正确得字符,谢谢!\\n\fhzjm(); } }

void DengJi() { int rs; int i,k=1; system(\

printf(\请输入需要输入几个学生信息:\scanf(\

for(i=shuliang;i

printf(\请输入第%d个学生得学号:\scanf(\、number); printf(\请输入学生得姓名:\scanf(\、name); printf(\请输入学生3门课得成绩:\printf(\请输入第1门课得成绩:\scanf(\、gaoshu); printf(\请输入第2门课得成绩:\scanf(\、yingyu); printf(\请输入第3门课得成绩:\scanf(\、jisuanji); }

shuliang=shuliang+rs; fhzjm(); }

void ShanChu() {

char shanchuinfo[10]; system(\

printf(\删除全部学生信息请输入\\\,删除指定学号得学生信

息请输入\\\scanf(\if(strcmp(shanchuinfo,\{ int j;

printf(\您删除得学生信息如下:\\n\

printf(\学号-------------姓名-------------高数--------------英语--------------计算机\\t\\n\for(j=0;j

printf(%udent[j]

number,student[j]

name,student[j]

gaoshu,student[j]、jisuanji); shuliang=0;

printf(\删除成功\\n\\n\}

else if(strcmp(shanchuinfo,\{

struct student *p=NULL; int choice; int i,j,k=0;

printf(\请输入您要删除得人得学号:\scanf(\

for(i=0;i

if(choice==student[i]、number) {

k=1;j=i;break; } } if(k) {

if(shuliang==1) {

p=&student[0]; free(p); shuliang=0; } else {

for(i=j;i

student[i]=student[i+1]; }

shuliang=shuliang-1;

}

printf(\删除成功\\n\\n\} else {

printf(\输入数据错误!\\n\} } fhzjm(); }

void LiuLan() { int i;

system(\if(shuliang==0) {

printf(\系统里面没有任何学生得信息!\\n\} else {

for(i=0;i

printf(\第%d个学生得学号为:%d\\n\、number); printf(\第%d个学生得姓名为:%s\\n\、name); printf(\第%d

个学生得第一门课得成绩

为:%d\\n\、gaoshu); printf(\第%d

个学生得第二门课得成绩

为:%d\\n\、yingyu); printf(\第%d

个学生得第三门课得成绩

为:%d\\n\、jisuanji);

student[i]、sum=student[i]、gaoshu+student[i]、yingyu+student[i]、jisuanji;

printf(\第%d个学生得总成绩为:%d\\n\、sum); } } fhzjm(); }

void ChaZhao() { int xx;

char choice,yy[20]; int i,j,k=0; system(\if(shuliang==0)

{

printf(\系统里面没有任何学生得信息!\\n\fhzjm(); }

printf(\三种查找方式:学号,姓名,成绩\\n\

printf(\如果按学号查找请输1,如果按姓名查找请输2,如果按成绩查找请输3\\n\

printf(\请输入您查找得方式:\scanf(\if(choice=='1') {

printf(\请输入需要查找学生得学号:\scanf(\

printf(\您所查找得学生得信息为:\\n\

printf(\学号----姓名----高数成绩----英语成绩----计算机成绩----\\t\\n\

for(i=0;i

if(xx==student[i]、number) { j=i;k=1;

printf(\

\、number,student[j]、name,student[j]、gaoshu,student[j]、yingyu,student[i]、jisuanji); } } if(k==0)

printf(\输入信息有误:\\n\}

else if(choice=='2') {

printf(\请输入需要查找学生得姓名:\\n\scanf(\

printf(\您所查找得学生得信息为:\\n\

printf(\学号----姓名----高数成绩----英语成绩----计算机成绩----\\t\\n\

for(i=0;i

if(strcmp(yy,student[i]、name)==0) { j=i;k=1;

printf(\\、number,student[j]、name,student[j]、gaoshu,student[j]、yingyu,student[j]、jisuanji);

} } if(k==0)

printf(\输入信息有误:\\n\}

else if(choice=='3') {

printf(\请输入需要查找学生得成绩:\\n\scanf(\

printf(\您所查找得学生得信息为:\\n\

printf(\学号----姓名----高数----英语----计算机----\\t\\n\for(i=0;i

if(xx==student[i]、grade) { j=i;k=1;

printf(\\、number,student[j]、name,student[j]、gaoshu,student[j]、yingyu,student[i]、jisuanji); } } if(k==0)

printf(\输入信息有误:\\n\} fhzjm(); }

void PaiXu() {

struct student *p1[N],**p2,*temp; int i,j;

system(\p2=p1;

for( i=0;i

p1[i]=student+i; }

for( i=0;i

for( j=i+1;j

if((*(p2+i))->sum<(*(p2+j))->sum)

{temp=*(p2+i);*(p2+i)=*(p2+j);*(p2+j)=temp;} } }

printf(\按照总成绩排序之后得信息为:\\n\printf(\学号----姓名----总成绩----\\t\\n\for( i=0;i

student[i]、sum=student[i]、gaoshu+student[i]、yingyu+student[i]、jisuanji;

printf(\2+i))->name,(*(p2+i))->sum); } fhzjm(); }

void CunChu() { int i; FILE *rs;

if((rs=fopen(\、txt\{

printf(\exit(0); }

for(i=0;i

fwrite(&student[i], sizeof(student[i]), 1, rs); }

if(ferror(rs)) {

fclose(rs);

perror(\写文件失败!\\n\return; }

printf(\存储文件成功!\\n\fclose(rs); fhzjm(); }

void DaoChu() {

struct student t; int i=0;

FILE* fp = fopen(\、txt\shuliang=0; if(NULL==fp) {

perror(\读取文件打开失败!\\n\return;

}

memset(student,0x0,sizeof(student)); while(1) {

fread(&t,sizeof(t),1,fp); if(ferror(fp)) {

fclose(fp);

perror(\读文件过程失败!\\n\return; }

if(feof(fp)) { break; }

student[i]=t; i++; }

fclose(fp); shuliang=i;

printf(\导出文件成功!\\n\fhzjm();

}

void menu() { int n=0; system(\

printf(\学生信息管理系统\\n\printf(\作者:陈椿\\n\

printf(\printf(\、登记学生信息\\n\printf(\、删除学生信息\\n\

printf(\、浏览所有已经登记得学生\\n\printf(\、查找\\n\printf(\、1按学号查找\\n\printf(\、2按姓名查找\\n\printf(\、3按成绩查找\\n\printf(\、根据总成绩排序\\n\printf(\、存储到文件\\n\printf(\、从文件导出\\n\printf(\、退出系统\\n\a: printf(\请选择:\scanf(\switch (n)

{ case 1: DengJi();break; case 2:

ShanChu();break; case 3: LiuLan();break; case 4:

ChaZhao();break; case 5: PaiXu();break; case 6:

CunChu();break; case 7:

DaoChu();break; case 8: exit(0);break; default: {

printf(\请输入1-8之间得数字,谢谢!\\n\goto a; }

} } main() { menu(); }

学生信息管理系统c语言版源代码

#include#include#include#include#defineN1000typedefstructstudent{intnumber;charname[20];intgrade;intgaoshu;intyingyu;intjisuan
推荐度:
点击下载文档文档为doc格式
5841a7xs725nrap1rg1l036aw5tvxo00xp8
领取福利

微信扫码领取福利

微信扫码分享