第一范文网 - 专业文章范例文档资料分享平台

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

来源:用户分享 时间:2025/7/9 13:52:48 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

#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语言版源代码 的文档
学生信息管理系统c语言版源代码.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c5841a7xs725nrap1rg1l036aw5tvxo00xp8_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top