新生报到系统.docx

上传人:b****2 文档编号:672787 上传时间:2023-04-29 格式:DOCX 页数:19 大小:173.56KB
下载 相关 举报
新生报到系统.docx_第1页
第1页 / 共19页
新生报到系统.docx_第2页
第2页 / 共19页
新生报到系统.docx_第3页
第3页 / 共19页
新生报到系统.docx_第4页
第4页 / 共19页
新生报到系统.docx_第5页
第5页 / 共19页
新生报到系统.docx_第6页
第6页 / 共19页
新生报到系统.docx_第7页
第7页 / 共19页
新生报到系统.docx_第8页
第8页 / 共19页
新生报到系统.docx_第9页
第9页 / 共19页
新生报到系统.docx_第10页
第10页 / 共19页
新生报到系统.docx_第11页
第11页 / 共19页
新生报到系统.docx_第12页
第12页 / 共19页
新生报到系统.docx_第13页
第13页 / 共19页
新生报到系统.docx_第14页
第14页 / 共19页
新生报到系统.docx_第15页
第15页 / 共19页
新生报到系统.docx_第16页
第16页 / 共19页
新生报到系统.docx_第17页
第17页 / 共19页
新生报到系统.docx_第18页
第18页 / 共19页
新生报到系统.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

新生报到系统.docx

《新生报到系统.docx》由会员分享,可在线阅读,更多相关《新生报到系统.docx(19页珍藏版)》请在冰点文库上搜索。

新生报到系统.docx

新生报到系统

课程设计

 

学号

班级

姓名

指导教师

2008年6月28日

课程设计任务书

题目:

新生报到系统

一、课程设计时间

2007~08第2学期第17周,即6月23~27日,共计1周,20学时。

二、课程设计内容

用C语言编写软件完成新生报到系统,新生名单存放在file18.txt文件中。

程序应具有以下菜单,并实现其功能:

(1)从file18.txt中读入新生的信息(学号、姓名、民族、省份、高考分数、专业),并保存到myfile.txt文件中;

(2)新生报到;

(3)打印所有未报到的新生;

(4)学生信息查询(根据学号、姓名、省份);

(5)退出程序。

三、课程设计要求

程序质量:

✧贯彻结构化的程序设计思想。

✧用户界面友好,功能明确,操作方便。

✧代码应适当缩进,并给出必要的注释,以增强程序的可读性。

课程设计说明书:

✧课程结束后,上交课程设计说明书和源程序。

课程设计说明书的内容参见提供的模板。

四、指导教师和学生签字

指导教师:

________学生签名:

________

五、成绩

六、教师评语

目录

一、需求分析1

二、程序流程图2

三、核心技术的实现说明及相应程序段5

四、个人总结7

五、参考文献8

六、源程序8

 

一、需求分析

本题要求将提供的数据从file18.txt中读入到myfile.txt文件中并依次将报到的新生信息录入;打印所有未报到的新生信息;查询新生信息;退出四项要求。

经过对程序设计题目的分析可知,整个程序的设计实现大致分为五个模块,其中每一个模块对应一个函数,他们的功能分别为

1、从file18.txt文件中读入信息(学号,姓名,民族,省份,高考分数,专业)并保存到myfile.txt文件中。

(insert-information函数)。

2、将报到的新生信息录入(baodao函数)。

3、打印所有未报到的学生信息。

(dayin函数)。

4、查询学生信息(chaxun函数)。

5、退出。

二、程序流程图

程序总体结构图

(1)读取信息图。

(2)新生报到函数

(3)打印未报到同学信息

(4)查询学生信息函数

三、核心技术的实现说明及相应程序段

本程序主要由四个自定义函数和一个主函数组成,其中主函数以菜单的形式调用其他函数来实现要求的所有功能。

在这些函数当中,从file.18txt中读入信息到myfile.txt文件中并保存;新生报到;打印未报到的学生信息;学生信息查询为核心的部分,下面分别进行说明。

1、从file18.txt文件中读入信息并保存到myfile.txt文件中.voidinsert_informaion()

{

FILE*fp1,*fp2;

inti;

if((fp1=fopen("e:

\\file18.txt","r+"))==NULL)

{printf("\n不能打开文件");

return;

}for(i=0;i<20;i++)

{fscanf(fp1,"%s%s%s%s%d%s",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,&stud[i].fenshu,stud[i].zhuanye);

}

fclose(fp1);

if((fp2=fopen("e:

\\myfile.txt","r+"))==NULL)/*打开文件*/

{printf("\n不能打开文件");

return;}

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

{fprintf(fp2,"%15s,%7s,%5s,%7s,%5d,%20s\n",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,stud[i].fenshu,stud[i].zhuanye);}/*在文件中输出学生信息*/

fclose(fp2);/*关闭文件*/

}

}

2、录入报到学生信息

voidbaodao()

{

FILE*fp;

inti,flag=0,shu,j;

charnumber[20];

if((fp=fopen("e:

\\file18.txt","r+"))==NULL)

{

printf("\nCannotopenfiel");

return;

}

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

{

fscanf(fp,"%s%s%s%s%d%s",stud[i].xuehao,stud[i].xingming,

stud[i].minzu,stud[i].sheng,&stud[i].fenshu,stud[i].zhuanye);

}

printf("\n请输入本次报到的学生数量:

");

scanf("%d",&shu);

for(j=0;j

{

flag=0;

printf("\n请输入学生学号:

");

scanf("%s",number);

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

{

if(strcmp(stud[i].xuehao,number)==0)/*比较输入数据与原文件中数据*/

{stud[i].dao=1;

flag++;

printf("%15s,%7s,%5s,%7s,%5d,%20s\n",stud[i].xuehao,stud[i].xingming,

stud[i].minzu,stud[i].sheng,stud[i].fenshu,stud[i].zhuanye);}

}

if(flag==0)

{

printf("\n找不到这个学生信息");

}

}

fclose(fp);

if((fp=fopen("e:

\\myfile.txt","r+"))==NULL)

{

printf("\nCannotopenfile");

return;

}

fclose(fp);

}运行结果

3、打印未报到新生信息voiddayin()

{

FILE*wenjian;

inti,flag=0;

if((wenjian=fopen("e:

\\file18.txt","r+"))==NULL)

{

printf("\nCannotopenfiel");

return;

}

printf("\n未报到的新生信息");

printf("\n");

for(i=0;i<20;i++)/*利用for循环将未到新生信息打印*/

{

fscanf(wenjian,"%s%s%s%s%d%s",stud[i].xuehao,stud[i].xingming,

stud[i].minzu,stud[i].sheng,&stud[i].fenshu,stud[i].zhuanye);

if(stud[i].dao==0)

printf("%15s,%7s,%5s,%7s,%5d,%20s\n",stud[i].xuehao,stud[i].xingming,

stud[i].minzu,stud[i].sheng,stud[i].fenshu,stud[i].zhuanye);

}

fclose(wenjian);

}

4.查询学生信息voidchaxun()

{

FILE*fp1;

inti;

if((fp1=fopen("e:

\\file18.txt","r+"))==NULL)

{

printf("\n不能打开文件");

return;

}

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

{

fscanf(fp1,"%s%s%s%s%d%s",stud[i].xuehao,stud[i].xingming,

stud[i].minzu,stud[i].sheng,&stud[i].fenshu,stud[i].zhuanye);

}

fclose(fp1);

chara[13];

puts("请输入学生信息\n");

scanf("%s",a);

{for(i=0;i<20;i++)

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

printf("%15s,%7s,%5s,%7s,%5d,%20s\n",stud[i].xuehao,stud[i].xingming,

stud[i].minzu,stud[i].sheng,stud[i].fenshu,stud[i].zhuanye);

}

if(strcmp(stud[i].xuehao,a)!

=0)

printf("没有该同学信息");

}

四、个人总结

这次C语言课程设计消除了我对C语言的错误认识,以前认为C语言就是简单的学科,只是简单的编程设计,其实不然,每个程序都要深刻掌握其真正操作价值,有时几个语句可以通过某种方式简化或是合并,通过这次C语课程设计,使我加深了对C语言的了解,也提高了C语言的应用能力。

这次课程任务设计,主要应用了文件的打开和数据的读取等多方面知识,起初不是很清楚这些内容的我,在多次查书翻资料请教老师同学之后,使我能够完成整个任务.这次课设使我熟练掌握知识的同时还增强了我的实际动手的能力,检验了我们将所学知识应用于实践的能力,使我受益匪浅。

五、参考文献

1谭浩强.C程序设计.北京:

清华大学出版社,2005

2刘成等.C语言程序设计实验指导与习题集.北京:

中国铁道出版社,2006

六、源程序

#include

#include

#include

structstudent/*定义结构体*/

{charxuehao[13];

charxingming[10];

charminzu[10];

charsheng[15];

intfenshu;

charzhuanye[30];

intdao;

}stud[20];

voidinsert_informaion()/*录入信息函数*/

{FILE*fp1,*fp2;

inti;

if((fp1=fopen("e:

\\file18.txt","r+"))==NULL)

{

printf("\n不能打开文件");

return;}for(i=0;i<20;i++)

{fscanf(fp1,"%s%s%s%s%d%s",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,&stud[i].fenshu,stud[i].zhuanye);}

fclose(fp1);

if((fp2=fopen("e:

\\myfile.txt","r+"))==NULL)

{printf("\n不能打开文件");

return;}

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

{

fprintf(fp2,"%15s,%7s,%5s,%7s,%5d,%20s\n",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,stud[i].fenshu,stud[i].zhuanye);

}fclose(fp2);

}

voidbaodao()

{FILE*fp;

inti,flag=0,shu,j;

charnumber[20];

if((fp=fopen("e:

\\file18.txt","r+"))==NULL)

{printf("\nCannotopenfiel");

return;}

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

{fscanf(fp,"%s%s%s%s%d%s",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,&stud[i].fenshu,stud[i].zhuanye);}

printf("\n请输入本次报到的学生数量:

");

scanf("%d",&shu);

for(j=0;j

{flag=0;

printf("\n请输入学生学号:

");

scanf("%s",number);

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

{if(strcmp(stud[i].xuehao,number)==0)

{stud[i].dao=1;

flag++;

printf("%15s,%7s,%5s,%7s,%5d,%20s\n",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,stud[i].fenshu,stud[i].zhuanye);}}

if(flag==0)

{printf("\n找不到这个学生信息");}

fclose(fp);

if((fp=fopen("e:

\\myfile.txt","r+"))==NULL)

{printf("\nCannotopenfile");

return}

fclose(fp)}

voiddayin()

{

FILE*wenjian;

inti,flag=0;

if((wenjian=fopen("e:

\\file18.txt","r+"))==NULL)

{printf("\nCannotopenfiel");

return;}

printf("\n未报到的新生信息");

printf("\n");

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

{fscanf(wenjian,"%s%s%s%s%d%s",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,&stud[i].fenshu,stud[i].zhuanye);

if(stud[i].dao==0)

{printf("%15s,%7s,%5s,%7s,%5d,%20s\n",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,stud[i].fenshu,stud[i].zhuanye);}

fclose(wenjian);

}

voidchaxun()/*查询函数*/

{FILE*fp1;

inti;

if((fp1=fopen("e:

\\file18.txt","r+"))==NULL)

{printf("\n不能打开文件");

return;}

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

{fscanf(fp1,"%s%s%s%s%d%s",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,&stud[i].fenshu,stud[i].zhuanye);

}

fclose(fp1);

chara[13];

puts("请输入学生信息\n");

scanf("%s",a);

{for(i=0;i<20;i++)

if(strcmp(stud[i].xuehao,a)==0)/*比较数据长短*/

printf("%15s,%7s,%5s,%7s,%5d,%20s\n",stud[i].xuehao,stud[i].xingming,stud[i].minzu,stud[i].sheng,stud[i].fenshu,stud[i].zhuanye);}

if(strcmp(stud[i].xuehao,a)!

=0)

printf("没有该同学信息");}

voidmain()

{inti;

for(;;){

printf("\n--------------欢迎使用新生报到系统---------------");

printf("\n--------------1录入信息--------------------------");

printf("\n--------------2新生报到--------------------------");

printf("\n--------------3打印未报到的学生------------------");

printf("\n--------------4查询学生信息----------------------");

printf("\n--------------5退出---------------------------");

printf("\n--------------请选择-------------------------\n\t");

scanf("%d",&i);

switch(i)

{

case1:

clear();insert_informaion();break;

case2:

clear();baodao();break;

case3:

clear();dayin();break;

case4:

clear();chaxun();break;

case5:

clear();exit(0);break;

default:

printf("\n输入错误");}}}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2