C语言课程设计图书馆管理系统源程序.docxVIP

  • 1
  • 0
  • 约1.8万字
  • 约 17页
  • 2019-03-22 发布于安徽
  • 举报

C语言课程设计图书馆管理系统源程序.docx

#include stdio.h #include stdlib.h #include string.h #include malloc.h #define LEN sizeof(struct message_student) /*一个结构体数组元素的长度*/ #define numsubs 5 /*学科数目*/ typedef struct message_student/*结构体定义*/ { char number[6]; char name[20]; int age; int birthday; char sex[4]; char address[20]; float subject[numsubs]; float score; float average; int index; }student; int numstus; /*学生数目*/ student *pointer;/*指向结构体数组的指针*/ int lens; int menu_select(); /*函数声明*/ int openfile(student stu[]); int findrecord(student stud[]); int writetotext(student stud[]); void welcome(); void display1(); void showtable(); void sort(student stu[]); void deleterecord(student stu[],int i); void addrecord(student stud[]); void display(student stud[],int n1,int n2); void amendrecord(student stud[]); void count(student stud[]); void sortnum(student stud[]); void sortnum2(student stud[]); void sortname(student stud[]); void sortname2(student stud[]); void sortcount(student stud[]); void sortcount2(student stud[]); void statistic(student stud[]); void display1(); void main() { int i=1; char str[2]; lens=100; pointer=(student *)malloc(lens*LEN); numstus=0; welcome(); system (color 1f); while(i0) { i=menu_select(); switch(i) { case 1:addrecord(pointer);break; /*增加学生信息*/ case 2:findrecord(pointer);break; /*查询学生信息*/ case 3:amendrecord(pointer);break;/*修改学生信息*/ case 4:sort(pointer);break; /*学生信息排序*/ case 5:statistic(pointer);break;/*统计信息*/ case 6:openfile(pointer);break;/*打开文件*/ case 7:writetotext(pointer);break;/*保存文件*/ case 8:display(pointer,0,numstus-1);break;/*显示记录*/ case 0: if(numstus!=0) printf(是否保存当前记录?(y/n)); gets(str); if(str[0]==y||str[0]==Y) writetotext(pointer); i=-1;break;/*退出系统*/ default:printf(请输入数字0~8:\n);i=1; /*输入错误*/ } } printf(\t\t谢谢使用!!!欢迎再次使

文档评论(0)

1亿VIP精品文档

相关文档