宿舍管理查询系统课程设计C语言 完整.docx
- 文档编号:525394
- 上传时间:2022-10-10
- 格式:DOCX
- 页数:16
- 大小:213.72KB
宿舍管理查询系统课程设计C语言 完整.docx
《宿舍管理查询系统课程设计C语言 完整.docx》由会员分享,可在线阅读,更多相关《宿舍管理查询系统课程设计C语言 完整.docx(16页珍藏版)》请在冰豆网上搜索。
宿舍管理查询系统课程设计C语言完整
1、课程设计目的.....................................................1
2、课程设计题目及要求..........................................1
3、模块图与流程图...................................................1
4、程序清单...............................................................5
5、运行结果...............................................................11
6、实验心得...............................................................13
一、课程设计目的:
课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。
提高学生适应实际,实践编程的能力。
二、课程设计题目及要求:
课程设计题目:
宿舍管理查询系统
要求:
1)学生结构:
学号、姓名、宿舍号
2)建立数据文件,输入学生信息
3)数据文件按关键字排序,另选一个排序方法
4)查询:
按姓名查询、学号查询、房号查询
三、模块图与流程图:
模块图:
流程图:
四、程序清单:
#include
#include
#include
#include
#include
typedefstruct
{
charnum[10];
charname[20];
introomID;
}Student;
Studentstu[80];
intmenu_select()
{
charc;
do{
printf("departmentmanagement\n");
printf("1.enterinformation\n");
printf("2.showalltheinformation|\n");
printf("3.sort\n");
printf("4.selectinformation|\n");
printf("0.Quit|\n");
printf("\n");
printf("pleaseenteryourchoice:
\n");
c=getchar();
}while(c<'0'||c>'4');
return(c-'0');
}
intInput(Studentstud[],intn)
{inti=0;
charsign,x[10];
while(sign!
='n'&&sign!
='N')
{
printf("studentnumber:
\n");
scanf("%s",stud[n+i].num);
printf("name:
\n");
scanf("%s",stud[n+i].name);
printf("roomID:
\n");
scanf("%d",&stud[n+i].roomID);
gets(x);
printf("areyouagain?
(Y/N)\n");
scanf("%c",&sign);
i++;
}
return(n+i);
}
voidDisplay(Studentstud[],intn)
{
inti;
printf("studentnumber,name,roomID");
printf("\n");
for(i=1;i { printf("\t\t\t%-16s%-15s%d\n",stud[i-1].num,stud[i-1].name,stud[i-1].roomID); if(i>1&&i%10==0) { printf("\n"); system("pause"); } } system("pause"); } voidSort_by_num(Studentstud[],intn) {inti,j,*p,*q,s; chart[10]; for(i=0;i for(j=0;j if(strcmp(stud[j].num,stud[j+1].num)>0) {strcpy(t,stud[j+1].num); strcpy(stud[j+1].num,stud[j].num); strcpy(stud[j].num,t); strcpy(t,stud[j+1].name); strcpy(stud[j+1].name,stud[j].name); strcpy(stud[j].name,t); p=&stud[j+1].roomID; q=&stud[j].roomID; s=*p; *p=*q; *q=s; } Display(stu,n); } voidSort_by_name(Studentstud[],intn) {inti,j,*p,*q,s; chart[10]; for(i=0;i for(j=0;j if(strcmp(stud[j].name,stud[j+1].name)>0) {strcpy(t,stud[j+1].num); strcpy(stud[j+1].num,stud[j].num); strcpy(stud[j].num,t); strcpy(t,stud[j+1].name); strcpy(stud[j+1].name,stud[j].name); strcpy(stud[j].name,t); p=&stud[j+1].roomID; q=&stud[j].roomID; s=*p; *p=*q; *q=s; } Display(stu,n); } voidSort_by_room(Studentstud[],intn) {inti,j,*p,*q,s; chart[10]; for(i=0;i for(j=0;j if(stud[j].roomID>stud[j+1].roomID) {strcpy(t,stud[j+1].num); strcpy(stud[j+1].num,stud[j].num); strcpy(stud[j].num,t); strcpy(t,stud[j+1].name); strcpy(stud[j+1].name,stud[j].name); strcpy(stud[j].name,t); p=&stud[j+1].roomID; q=&stud[j].roomID; s=*p; *p=*q; *q=s; } Display(stu,n); } voidQuery_a_record_by_num(Studentstud[],intn) { chars[20]; inti=0; printf("pleaseentersutudentnumber: \n"); scanf("%s",s); while(strcmp(stud[i].num,s)! =0&&i if(i==n) {printf("noinformation\n"); return; } printf("his(her)number: %s\n",stud[i].name); printf("his(her)number: %s\n",stud[i].num); printf("his(her)roomID: %d\n",stud[i].roomID); } voidQuery_a_record_by_name(Studentstud[],intn) { chars[20]; inti=0; printf("enterthename: \n"); scanf("%s",s); while(strcmp(stud[i].name,s)! =0&&i if(i==n) {printf("noinformation\n"); return; } printf("his(her)number: %s\n",stud[i].name); printf("his(her)number: %s\n",stud[i].num); printf("his(her)roomID: %d\n",stud[i].roomID); } voidQuery_a_record_by_room(Studentstud[],intn) { ints; inti=0; printf("pleaseroomid: "); scanf("%d",&s); while(stud[i].roomID==s)i++; if(i==n) {printf("noinformation\n"); return; } printf("his(her)number: %s\n",stud[i].name); printf("his(her)number: %s\n",stud[i].num); printf("his(her)roomID: %d\n",stud[i].roomID); } voidWritetoText(Studentstud[],intn) { inti=0; FILE*fp; if((fp=fopen("stu.txt","w"))==NULL) { printf("fileopenfailed\n"); system("pause"); return; } fprintf(fp,"%d\n",n); while(i { fprintf(fp,"%-16s%-15s%d\n",stud[i].num,stud[i].name,stud[i].roomID); i++; } fclose(fp); printf("Savethefileiscomplete! \n"); } voidmain() { intn=0,i; for(;;) { switch(menu_select()) { case1: printf("pleaseenterinformation\n"); n=Input(stu,n); break; case2: printf("roominformation\n"); Display(stu,n); break; case3: printf("pleasechoosethewaytosort(1name,2studentnumber,3roomID)\n"); scanf("%d",&i); while(i) { if(i<1||i>3) { printf("what
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 宿舍管理查询系统课程设计C语言 完整 宿舍 管理 查询 系统 课程设计 语言