学生信息管理系统 C语言

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include "stdio.h"

#include "string.h"

#include "stdlib.h"

#define M 10

int num; //计数

struct student

{

char xuehao[10]; //学号

char name[10]; //姓名

char sex[8]; //性别

char birth[20]; //出生年月

char jiguan[30]; //籍贯

char tel[30]; //电话

int score; //成绩

}student[M];

char headline[80]; //全局变量

void read1()

{

FILE *fp; //文件指针

int i=0;

fp=fopen("jz0112.txt","r"); //打开文件

if(fp==NULL)

{

printf("不能找到文件,请检查!\n");

return;

}

fgets(headline,80,fp); //读第一行的函数

puts(headline);

while(!feof(fp)) //判断文件是否结束

//for(i=0;i

{

fscanf(fp,"%s%s%s%s%s%s%d",student[i].xuehao,student[i].name,student[i]. sex,

student[i].birth,student[i].jiguan,student[i].tel,&student[i].score);

i++; //fscanf读两个空白字符之间的字符

}

num=i;

fclose(fp); //关闭文件

for(i=0;i

printf("%-10s%-

8s%6s%16s%16s%16s%6d\n",student[i].xuehao,student[i].name,student[i].se x,

student[i].birth,student[i].jiguan,student[i].tel,student[i].score);

}

void find_xuehao() //按学号查询

{

char xuehao[10];

int i;

int flag=0;

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

scanf("%s",xuehao);

for(i=0;i

if(strcmp(xuehao,student[i].xuehao)==0)

{

flag=1;

printf("%-10s%-

8s%6s%16s%16s%16s%6d\n",student[i].xuehao,student[i].name,student[i].se x,

student[i].birth,student[i].jiguan,student[i].tel,student[i].score);

break;

}

if(flag==0)

printf("\n无此信息\n");

}

void find_name() //按姓名查询

{

char name[8];

int i;

int flag=0;

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

scanf("%s",name);

for(i=0;i

if(strcmp(name,student[i].name)==0)

{

flag=1;

printf("%-10s%-

8s%6s%16s%16s%16s%6d\n",student[i].xuehao,student[i].name,student[i].se x,

student[i].birth,student[i].jiguan,student[i].tel,student[i].score);

break;

}

if(flag==0)

printf("\n无此信息\n");

}

void all() //显示全部

{

int i;

for(i=0;i

{

printf("%-10s%-

8s%6s%16s%16s%16s%6d\n",student[i].xuehao,student[i].name,student[i].se x,

student[i].birth,student[i].jiguan,student[i].tel,student[i].score);

}

}

void find()

{

int b;

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

printf(" 1 按学号查询 2按姓名查询 3显示全部 4退出 \n");

printf("\n*************************************************************************\n"); printf("请选择:");

scanf("%d",&b);

switch(b)

{

case 1:find_xuehao();break;

case 2:find_name();break;

case 3:all();break;

case 4:return;

}

}

void sort_name() //按姓名排序

{

char name[M][12],t[12];

int i,j;

for(i=0;i

strcpy(name[i],student[i].name);

for(j=1;j

for(i=0;i

if(strcmp(name[i],name[i+1])>0)

{

strcpy(t,name[i]);

strcpy(name[i],name[i+1]);

strcpy(name[i+1],t);

}

for(i=0;i

for(j=0;j

if(strcmp(name[i],student[j].name)==0)

printf("%-10s%-

8s%6s%16s%16s%16s%6d\n",student[j].xuehao,student[j].name,student[j].se x,

student[j].birth,student[j].jiguan,student[j].tel,student[j].score);

}

相关文档
最新文档