基于C语言的文件管理系统

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

基于C语言的学生信息管理系统

#include "stdio.h"

#define SIZE 100000

#include"string.h"

#include"stdlib.h"

#include"conio.h"

struct student

{ int n;

int num;

char name[10];

int C;

int Maths;

int En;

float ave;

}stu[SIZE];

/*录入数据*/

void finput()

{

FILE *fp;

int i,p;

fp=fopen("fstu","wb");

for(i=0;i

{

printf("i=%d 输入序号i(当输入i=-1时,返回),i=",i++);

scanf("%d",&i);

if(i==-1)

{

fclose(fp);

return;

}

else

{

printf("请输入学号,姓名,C成绩,数学成绩,英语成绩:");

scanf("%d%s%d%d%d",&stu[i].num,stu[i].name,&stu[i].C,&stu[i].Maths,&stu[i].En);

stu[i].ave=(stu[i].C+stu[i].Maths+stu[i].En)/3.0;

stu[i].n=i+1;

fwrite(&stu[i],sizeof(struct student),1,fp);

}

}

fclose(fp);

}

/*输出数据*/

void flist()

{

FILE *fp;

int i;

fp=fopen("fstu","rb");

printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");

printf(" 成绩列表\n");

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

printf("序号学号姓名C成绩数学英语平均\n");

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

for(i=0;fread(&stu[i],sizeof(struct student),1,fp)==1;i++)

{

printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Math s,stu[i].En,stu[i].ave);

}

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

printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");

fclose(fp);

}

/*查找数据*/

void fsearch()

{

FILE *fp;

int i,num;

fp=fopen("fstu","rb");

rewind(fp);

printf("请输入要查找的学号:");

scanf("%d",&num);

printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");

printf(" 查询结果\n");

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

printf("序号学号姓名C成绩数学英语平均\n");

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

for(i=0;i<=SIZE;i++)

if(stu[i].num==num)

{

printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Math s,stu[i].En,stu[i].ave);

}

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

printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n\n\n");

fclose(fp);

}

/*增加数据*/

void fadden()

{

int i,s;

FILE *fp;

fp=fopen("fstu","ab+");

rewind(fp);

printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");

printf(" 成绩列表\n");

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

printf("序号学号姓名C成绩数学英语平均\n");

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

for(i=0;fread(&stu[i],sizeof(struct student),1,fp)==1;i++)

{

printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Math s,stu[i].En,stu[i].ave);

}

printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");

s=i;

for(i=s;i

{

printf("i=%d 输入序号i(当输入i=-1时,返回),i=",i+1);

scanf("%d",&i);

if(i==-1)

{

fclose(fp);

return;

}

else

{

printf("请输入学号,姓名,C成绩,数学成绩,英语成绩:");

stu[i].n=i+1;

scanf("%d%s%d%d%d",&stu[i].num,stu[i].name,&stu[i].C,&stu[i].Maths,&stu[i].En);

stu[i].ave=(stu[i].C+stu[i].Maths+stu[i].En)/3.0;

fwrite(&stu[i],sizeof(struct student),1,fp);

}

}

相关文档
最新文档