C语言课程设计_第1页
C语言课程设计_第2页
C语言课程设计_第3页
C语言课程设计_第4页
C语言课程设计_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、沈阳理工大学课程设计专用纸NO.成绩评定表学生姓名班级学号专业通信工程课程设计题目C语言课程设计评语组长签字:成绩日期2013年月日沈阳理工大学课程设计专用纸N0.3课程设计任务书学院信息科学与工程学院专业通信工程学生姓名班级学号课程设计题目C语言课程设计实践教学要求与任务:利用C语言编写卜题的代码。题目名称:查找分数与删除元素、工资统计程序的设计内容及要求:1. 编程,先从键盘输入一组学生成绩到数组中,然后输入某一个分数段,查找输出该分数段内的所有成绩。2. 编与函数fun (int xx ,int n , int y ),其中n代表数组兀素的个数,y中内容是要删除的兀素值。 函数的功能是数

2、组 xx中所有值为y的元素。数组中的值和 y的值由主函数通过键盘输入。3. 工资统计程序设计设计结构体数组,结构中包含职工数据为:编号、姓名、部门、应付工资、保险、税金、 实付工资。其中实付工资由公式计算得到:实付工资=应付工资-保险-税金设计各个函数,分别实现以下功能:(1) 输入职工数据,其中“实付工资”通过计算得到。(2) 显示全体职工数据。(3) 输入某部门值,显示该部门职工的数据、工资总额、平均工资。设计菜单,通过选择菜单 调用以上各函数;系统启动时数据可由文件导入,录入新的数据或修改数据后,可将数据重新写 入文件。工作计划与进度安排:第18-19周:第18周.C语言基础编程练习第1

3、8周.算法设计及编写程序代码第19周.编写程序代码及程序调试第19周.程序验收及答辩指导教师:2013年 月日专业负责人:2013年 月日学院教学副院长:2013年 月日一、 题目要求3.二、 算法设计4.三、编程实现10四、结果分析25五、参考文献28一、题目要求|题目名称:查找分数与删除元素、工资统计程序的设计|内容:1、编程,先从键盘输入一组学生成绩到数组中,然后输入某一个分数!段,查找输出该分数段内的所有成绩。2、 编写函数fun (int xx ,int n , int y),其中n代表数组元素I的个数,y中内容是要删除的元素值。函数的功能是数组xx中所有i|值为y的元素。数组中的值

4、和y的值由主函数通过键盘输入3、工资统计程序设计|设计结构体数组,结构中包含职工数据为:编号、姓名、部门、 应付工资、保险、税金、实付工资。其中实付工资由公式计算得到:|实付工资二应付工资-保险-税金。|设计各个函数,分别实现以下功能:I( 1)输入职工数据,其中“实付工资”通过计算得到。|( 2)显示全体职工数据。|( 3)输入某部门值,显示该部门职工的数据、工资总额、平均工|资。设计菜单,通过选择菜单调用以上各函数;系统启动时数据可由I文件导入,录入新的数据或修改数据后,可将数据重新写入文件。I要求:I利用C语言编写上述程序,开发环境可采用Turbo C 2.0或VisualIC+ 6.0

5、 等。沈阳理工大学课程设计专用纸N0.11:】、算法设计1、注:此函数功能是,输入一组成绩,然后在程序中输入所要查询的成绩分数段,输出该分数 段的所有成绩。2、编写函数fun (int xx ,int n , int y ),其中n代表数组元素的个数,y中内容是要删除的元 素值。函数的功能是数组 xx中所有值为y的元素。数组中的值和 y的值由主函数通过键盘 输入。i=0i+给数组x输入一个数据注: fun (xx ,int n, int y )函数xx是指定的功能是对数组中含有 y的元素删除。其中含有 xx ,int n, int y 3个变量, 数组,n表示数组中的元素个数,y表示要删除的数

6、组中的元素值。3、工资统计程序设计设计结构体数组,结构中包含职工数据为:编号、 金、实付工资。其中实付工资由公式计算得到:实付工资 设计各个函数,分别实现以下功能:(1)(2)(3)姓名、部门、应付工资、保险、税=应付工资-保险-税金输入职工数据,其中“实付工资”通过计算得到。 显示全体职工数据。输入某部门值,显示该部门职工的数据、工资总额、 系统启动时数据可由文件导入,择菜单调用以上各函数;数据重新写入文件。平均工资。设计菜单,通过选录入新的数据或修改数据后,可将开始定义变量 a,flag=O,number=Oflag=0?i否fr结束输出“录入职工信息请按1,新增职工信息请按 2输入一个数

7、据给是a=1?调用函数shuru();调用函数shuchu();调用函数caida n();否是a=2?沈阳理工大学课程设计专用纸N0.13注:函数说明::void shuru();/用来输入增加职工的信息void shuchu();/用来输出文件中所有职工的信息void save(i nt n);将职工信息保存到文件中,实现导入void zen gjia(i nt n);增加职工的信息void xiugai();/修改职工的信息void chax un();/按照部门查询职工信息void caida n();基本的菜单,按提示操作load();/将职工信息从文件中导出沈阳理工大学课程设计专用

8、纸NO.#二、编程实现程序的具体C语言代码如下:第1题/*编程人:楚天辞完成时间2012年7月5日联系方式:#in cludemai n()float m,n, a;int i, k;prin tf(请输入一个数组:n);for (i=0 ;i6; i+)sca nf(%f,&ai);printf(”请按由小到大的顺序输入分数段nsca nf(%f,&n);sca nf(%f,&m);printf(以下成绩属于该分数段n);for (k=0 ;k6; k+)if(n=ak&ak=m)prin tf(% 9.2fn,ak);prin tf(n);:沈阳理工大学课程设计专

9、用纸N0.19第2题:#in clude#defi ne N 10int fun (i nt xx,i nt n ,i nt y)int i,j=O,k;for(i=0;in-j;i+)/ j表示要删除的数值个数,而n-j表示数组有效的数值个数if(xxi=y) for(k=i;k n-1;k+)/从删除位置后面的第一个元素值开始向前移动1xxk=xxk+1;1j+;retur n j;mai n():int i,j,y,xxN;printf(请输入%d个数组的元素值n”,N);:for(i=0;iN;i+)sca nf(%d, &xxi);printf(请输入要删除的元素值n);sca nf

10、(%d, &y);j=fun(xx,N,y);printf(删除后的数组为:n);for(i=0;iN-j;i+)prin tf(%5d,xxi);prin tf(n);第3题:#in clude#i ncludevstri ng.hstruct ziji nint bia nhao;char xingmin g20;char bume n100;float yfgz;float baoxia n;float shuiji n;float sfgz; zhigong100;/定义结构体数组 zhigongvoid shuru();/用来输入增加职工的信息void shuchu();/用来输出文

11、件中所有职工的信息void save(i nt n); /将职工信息保存到文件中,实现导入void zen gjia(i nt n); 增加职工的信息void xiugai();/修改职工的信息void chaxu n();按照部门查询职工信息void caida n();基本的菜单,按提示操作load();将职工信息从文件中导出int sumNum; /商品总个数mai n():int a,flag=0,nu mber=0;doprintf(录入职工信息请按1,新增职工信息请按2n);sea nf(%d,&a);if(a=1)shuru(); /输入数据shuchu();eaida n();

12、else if(a=2)sumNum=load();将文件中原有的职工信息个数传给sumNum1 printf(请输入增加职工的个数n);sea nf(%d,&n umber);zen gjia( nu mber);elseprintf(没有这个选项n”);flag=1;while(flag);void caida n()int a,flag=0,nu mber=0;doprintf(增加职工信息请按1,修改职工信息请按2,查询职工 信息请按3,退出请按4n);sca nf(%d,&a);if(a=1)printf(请输入增加职工的个数n);sca nf(%d,&n umber);zen gj

13、ia( nu mber);con ti nue;else if(a=2)xiugai();else if(a=3)chax un();else if(a=4)save(sumNum);break;else: printf(没有这个选项n”);1 flag=1;while(flag);j :void shuru()in t i, n;printf(输入多少个职工信息n);sca nf(%d,&n);for(i=0;i n ;i+)printf(请输入第%d个职工编号n,i+1);sca nf(%d, &zhig on gi.bia nhao);1 printf(请输入第%d个职工姓名n,i+1)

14、;i sca nf(%s,zhig on gi.xi ngmi ng);printf(请输入第%d个职工部门n,i+1);sca nf(%s,zhig on gi.bume n);沈阳理工大学课程设计专用纸N0.21printf(请输入第%d个职工应付工资n,i+1);sea nf(%f, &zhig on gi.yfgz);printf(请输入第%d个职工保险n,i+1);sca nf(%f, &zhig on gi.baoxia n);printf(请输入第%d个职工税金n,i+1);sca nf(%f, &zhig on gi.shuiji n);zhigo ngi.sfgz =zhig

15、o ngi.yfgz - zhig on gi.baoxia n - zhig on gi.shuiji n;1I sumN um二n;save(sumNum);1:void shuchu()int i;printf(”编号 姓名 部门 应付工资 保险 税金实付工资n);for(i=0;isumNum;i+):printf( %4d%8s%4s%.2f%.2f%.2f%.2fn,zhigo ngi.bia nhao,zhig on gi.xi ngmi ng,zhigo ngi.bume n,zhig ong1i.yfgz,zhig on gi.baoxia n, zhig on gi.shu

16、iji n, zhig on gi.sfgz);沈阳理工大学课程设计专用纸N0.23void save(i nt n)int i;FILE *fp;if(fp二fope n(C:chutia nci.txt,wt+)=NULL)prin tf(you are wron g!n);for(i=0;i n ;i+):fscan f(fp,%d, &zhig on gi.bia nhao);/将对应的职工的编号按照%d的格式输入到fp所指向的文件中fsca nf(fp,%s,zhigo ngi.xi ngmi ng);1fsca nf(fp,%s,zhigo ngi.bume n);fsca nf(

17、fp,%f, &zhigo ngi.yfgz);fsca nf(fp,%f, &zhigo ngi.baoxia n);fscan f(fp,%f, &zhigo ngi.shuiji n);fsca nf(fp,%f, &zhigo ngi.sfgz);for(i=0;isumNum;i+):fprin tf(fp, %4d%8s%4s%.2f%.2f%.2f%.2fn,zhigo ngi.bia nhao,zhig on gi.xi ngmi ng,zhig on gi.bume n,zhigon gi.yfgz,zhigo ngi.baoxia n, zhig on gi.shuiji

18、n, zhig on gi.sfgz);1fclose(fp); /文件关闭,防止数据的流失load()int i=0;FILE *fp;fp二fope n(C:chutia nci.txt,rt+);do:fsca nf(fp,%d, &zhig on gi.bia nhao);1fsca nf(fp,%s,zhigo ngi.xi ngmi ng);jfsca nf(fp,%s,zhigo ngi.bume n);fsca nf(fp,%f, &zhigo ngi.yfgz);ifsca nf(fp,%f, &zhigo ngi.baoxia n);fsca nf(fp,%f, &zhig

19、o ngi.shuiji n);fsca nf(fp,%f, &zhigo ngi.sfgz);i+;while(feof(fp)=O); /feof函数,检测文件的数据流是否结束retur n (i-1);:void zen gjia(i nt n)int i;istruct ziji n temp;for(i=0;i n ;i+)沈阳理工大学课程设计专用纸N0.27printf(请输入增加的第%d个职工的编号n,i+1);sea nf(%d,&temp.bia nhao);printf(请输入增加的第%d个职工的姓名n,i+1);sea nf(%s,temp.x ingmin g);pri

20、ntf(请输入增加的第%d个职工的部门n,i+1);sea nf(%s,temp.bume n);printf(请输入增加的第%d个职工的应付工资n,i+1);sea nf(%f,&temp.yfgz);printf(请输入增加的第%d个职工的保险n,i+1);sea nf(%f,&temp.baoxia n);printf(请输入增加的第%d个职工的税金n,i+1);sea nf(%f,&temp.shuiji n);temp.sfgz = temp.yfgz - temp.baoxian - temp.shuijin; zhigo ngsumNum+二temp;save(sumNum);s

21、huehu();eaida n();void xiugai()int a,i,b,j=0;printf(请输入您要修改的职工的编号n);sea nf(%d, &a);for(i=0;isumNum;i+)if(zhigo ngi.bia nhao=a)break;elsej+;if(j=sumNum)printf(没有该编号的职工n);shuchu();xiugai();printf(修改本职工的哪一项?n);printf(编号请按1姓名请按2,部门请按3,应付工资请按4, 保险请按5,税金请按6,取消请按7n);sca nf(%d,&b);if(b=1)printf(本职工原编号为%d请输入

22、本职工的新编号n ,zhigo ngi.bia nhao);sca nf(%d, &zhig on gi.bia nhao);save(sumNum);shuchu();caida n();else if(b=2)printf(本职工原姓名为%s请输入本职工的新姓名n,zhigo ngi.x in gmi ng);sea nf(%s,zhig on gi.xi ngmi ng);save(sumNum);shuehu();eaida n();else if(b=3):printf(本职工原部门为%s请输入本职工的新部门n ,zhigo ngi.bume n);sca nf(%s,zhig on

23、 gi.bume n);1 save(sumNum);j shuchu();caida n();else if(b=4)printf(”本职工原售价为%f请输入本职工的新应付工资n,zhigongi.yfgz);sca nf(%f, &zhig on gi.yfgz);zhigo ngi.sfgz = zhig on gi.yfgz - zhig on gi.baoxia n -zhig on gi.shuiji n;1 save(sumNum);i shuchu();caida n();沈阳理工大学课程设计专用纸NO.31else if(b=5)printf(”本职工原保险为%d请输入本职工的新保险n ,zhigo ngi.baoxia n);sca nf(%d, &zhig on gi.baoxia n);zhigo ngi.sfgz = zhig on gi.yfgz - zhig on gi.baoxia n-zhig on gi.shuiji n;save(sumNum);1shuchu();j caida n();else if(b=6)printf(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论