大学生C语言实训题目.docx

上传人:暗伤 文档编号:79823045 上传时间:2023-03-21 格式:DOCX 页数:11 大小:14.93KB
返回 下载 相关 举报
大学生C语言实训题目.docx_第1页
第1页 / 共11页
大学生C语言实训题目.docx_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《大学生C语言实训题目.docx》由会员分享,可在线阅读,更多相关《大学生C语言实训题目.docx(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、题目一:贪吃蛇游戏问题描述:贪吃蛇是一个深受人们喜爱的游戏,一条蛇在密闭的围墙内,在围墙内随机出现一个食物,通过按键盘上的四个光标控制蛇向上下左右四个方向移动,蛇头撞到食物,则表示食物被蛇吃掉,这时蛇身子长一节,同时积分10 分,接着又出现食物,等待被蛇吃掉, 如果在蛇移动的过程中,撞到墙壁或身体交叉蛇头撞到自己的身体,则游戏结束。题目二:通讯录1.系统功能要求:(1) 创建通讯录。输入学生的姓名、学号和电话号码等,并将它们存放在对应的数组中 ;每输入一组数据,记录数增 1。(2) 显示通讯录。将记录学生姓名、学号和电话号码的数组中的数据一一输出到屏幕上,可以根据实际记录数确定循环次数。(3)

2、 查询通讯录。分别按学号和姓名进行查询,查询时将输入的信息通过循环与相应 数组成员一一进行比较。(4) 修改通讯录。输入需要修改记录的学号,通过循环查找到该记录后,再输入新数 据替代原有数据。(5) 添加通讯录。判断输入的学号是否重复,若不重复再将输入的信息添加到对应的 数组中,每输入一组数据,记录数增 1。(6) 删除通讯录。分别按学号和姓名进行删除。(7) 排序通讯录。分别按学号和姓名进行排序。排序方式可以是升序或降序。(8) 退出。题目三:汉诺塔演示题目四:学生成绩管理系统问题描述:设计一个学生成绩管理系统,实现对学生成绩的动态管理,实现对学生成绩的输入,显示,删除,查找,插入,最佳,保

3、存,计算,排序等主要功能,主要功能说明如下: 1、每一条记录包括一个学生的学号、姓名、3 门课成绩、平均成绩。2、输入功能:可以一次完成若干条记录的输入。3、显示功能:完成全部学生记录的显示。4、查找功能:完成按姓名查找学生记录,并显示。5、排序功能:按学生平均成绩进行排序。6、插入功能:按平均成绩高低插入一条学生记录7 删除功能:如果输入错误,可以删除学生记录;8 退出。题目五:图书管理系统问题描述:设计一个图书管理系统,主要功能如下:1. 添加在系统中增加图书信息(可自己设计图书的信息:如书号,书名,出版社,等等)2. 借阅管理当输入有效证件号码之后,能对图书馆中现有的图书进行借阅,并设置

4、借阅时间。3. 还书管理当输入有效证件号码之后,读者能进行还书,还书包括还书日期是否超出时间,如果是, 提示缴纳相应的超时费用。当读者还书之后,能对读者现有的图书借阅情况进行简单的提示。如是否还有图书处于借阅状态,还书时间是多少,是否超时等。4. 图书浏览读者能对系统中的图书情况进行浏览。题目六:计算器的实现问题描述:利用TC 具有的函数模仿画出计算器的界面,实现计算机的基本功能,进行浮点加,减,乘,除,乘方和求模运行。题目七:迷宫问题问题描述:设计迷宫为二维平面图,将迷宫的左上角作为入口,右下角作为出口,求出从入口点到出口点的一条通路。题目八:冒泡排序的演示问题描述:冒泡排序是一种常用的排序

5、方法,通过初始由键盘输入 n 个整数,实现冒泡排序的演示。题目九:工资管理系统问题描述:工资管理是一个单位最基本的一项财务管理,设计一个工资管理系统,实现数据的输入,显示,查找,删除,追加,插入,计算工资,排序等主要功能。题目十:运动会分数统计任务:参加运动会有 n 个学校,学校编号为 1n。比赛分成 m 个男子项目, 和 w 个女子项目。项目编号为男子 1m,女子 m+1m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前三名由学生自己设定。(m=20,n=20)功能要求:1) 可以输入各个项目的前三名或前五名的成

6、绩;2) 能统计各学校总分,3) 可以按学校编号或名称、学校总分、男女团体总分排序输出;4) 可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。5) 数据存入文件并能随时查询6) 规定:输入数据形式和范围:可以输入学校的名称,运动项目的名称输出形式:有中文提示,各学校分数为整形界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。(数据文件的数据读写方法等相关内容在 c 语言程序设计的书上,请自学解决)请在最后的上交资料中指明你用到的存储结构;测试数据

7、:要求使用 1、全部合法数据;2、整体非法数据;3、局部非法数据。进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料中写明;题目十一:飞机订票系统任务:通过此系统可以实现如下功能: 录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市, 航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班; 退票: 可退票,退票后修改相关数据文件;客户资料有姓名,证件

8、号,订票数量及航班情况,订单要有编号。修改航班信息:当航班信息改变可以修改航班数据文件要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;题目十二:纸牌游戏任务:编号为1-52 张牌,正面向上,从第2 张开始,以2 为基数,是2 的倍数的牌翻一次,直到最后一张牌;然后,从第3 张开始,以3 为基数,是3 的倍数的牌翻一次,直到最后一张牌;然后从第4 张开始,以4 为基数,是4 的倍数的牌翻一次, 直到最后一张牌;.再依次 5 的倍数的牌翻一次,6 的,7 的 直到 以 52 为基数的 翻过,输出:这时正面向上的牌有哪些?题目十三:俄罗斯方块题目十四:电子时钟任务:通过系

9、统设计实现以下功能电子时钟界面显示功能:能够显示清晰完整的时钟界面电子时钟按键控制功能:通过按键控制对时间进行调整时钟动画处理功能:可以自动走时报时等等#include #include #include#define S3 *欢迎使用学生成绩管理系统* struct student/学生数据结构double num; char name20;float pingshi;/平时float shiyan;/实验float kaoshi;/考试double zongping;/总评stu30; void main()void newstu(); /* 输入一个班的学生记录*/ void showa

10、ll();/* 显示所有记录*/void calculate();/* 求出全班平均成绩,显示均方差*/ void sort();/*输出成绩与排名*/void save();/*将数据保存到成绩.txt 文件中*/ int n;while(n!=6)printf(nn%snn,S3);printf(%15s*09 自动化班学生成绩管理系统*nn, ); printf(%15s1:输入该班学生大学 c 学生成绩记录n, ); printf(%15s2: 显 示 所 有 成 绩 记 录 n, ); printf(%15s3:计算并输出平均成绩,均方差n, ); printf(%15s4: 输 出

11、 成 绩 与 排 名 n, ); printf(%15s5:结果存入文件成绩.txt中n, ); printf(%15s6:退出系统n, );printf(输入选项代码:);scanf(%d,&n); if(n!=1&n!=2&n!=3&n!=4&n!=5&n!=6)printf(对不起!您的输入有误,请重新输入:); elseswitch(n)case 1:newstu();break; case 2:showall();break; case 3:calculate();break; case 4:sort();break;case 5:save();break;case 6:printf

12、(n*谢谢使用!*n);break;break;getchar();/* 子函数*/void newstu() /* 输入一个班的学生记录*/int i,n;printf(请输入您要保存记录的人数:); scanf(%d,&n);if(n30)printf(对不起,您的输入有误,请重新输入); elsefor(i=0;in;i+)printf(请输入学号 姓名 平时成绩 实验成绩 考试成绩:);scanf(%lf%s%f%f%f,&stui.num,stui.name,&stui.pingshi,&stu i.shiyan,&stui.kaoshi);for(i=0;in;i+)stui.zo

13、ngping=0.1*stui.pingshi+0.3*stui.shiyan+0.6*stui.kaosh i;void showall()/* 显示所有记录*/int i,n;printf(请输入您要保存记录的人数:); scanf(%d,&n);printf(学号姓名平时成绩实验成绩考试成绩总评成绩n);for(i=0;in;i+)printf(%-18.0lf%-13s%-14.2f%-14.2f%-14.2f%-14.2fn,stui.num,s tui.name,stui.pingshi,stui.shiyan,stui.kaoshi,stui.zongping);void cal

14、culate()/* 求出全班平均成绩,显示均方差*/int a30=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23, 24,25,26,27,28,29;int i,n;double total=0,pfc=0,bzc=0; double ave;printf(请输入您要保存记录的人数:); scanf(%d,&n);for(i=0;in;i+)total=total+stui.zongping;ave=total/n;printf(总评平均成绩是%fn,ave); for(i=0;in;i+)pfc=pow(stu

15、i.zongping-ave),2)/n;bzc=sqrt(pfc);printf(n 平方差是%fn,pfc); printf(n 标准差是%fn,bzc);void sort()/*输出成绩与排名*/int a30=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23, 24,25,26,27,28,29;int i,j,temp; for(j=0;j29;j+)for(i=0;i29-j;i+) if(stuai.zongpingstuai+1.zongping)temp=ai;ai=ai+1; ai+1=temp;p

16、rintf(顺序为:n);printf(学号姓名总评成绩n);for(i=0;i30;i+)printf(%15.0lf%10s%15.2fn,stuai.num,stuai.name,stuai.zongping);printf(n);void save()/*将数据保存到成绩.txt 文件中*/int i;FILE *fp;fp=fopen(成绩.txt,w);fprintf(fp,学号姓名平时成绩实验成绩考试成绩总评成绩n);for(i=0;i29;i+)fprintf(fp,%15.0lf%14s%14.2f%14.2f%14.2f%14.2fn,stui.num,stu i.name,stui.pingshi,stui.shiyan,stui.kaoshi,stui.zongping);printf(System pause.n); printf(Please wait.n);printf(nn*恭喜,保存完成!*nn);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁