C语言程序设计课程设计报告

上传人:壹****1 文档编号:459378955 上传时间:2022-11-01 格式:DOCX 页数:17 大小:217.20KB
返回 下载 相关 举报
C语言程序设计课程设计报告_第1页
第1页 / 共17页
C语言程序设计课程设计报告_第2页
第2页 / 共17页
C语言程序设计课程设计报告_第3页
第3页 / 共17页
C语言程序设计课程设计报告_第4页
第4页 / 共17页
C语言程序设计课程设计报告_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《C语言程序设计课程设计报告》由会员分享,可在线阅读,更多相关《C语言程序设计课程设计报告(17页珍藏版)》请在金锄头文库上搜索。

1、C 语言程序设计课程设计报告(2013 2014学年 第 3学期)题目:C语言课程设计专业:软件工程班级:软件工程技术2班姓名学号:1林燕萍指导教师:吴芸成绩:计算机科学与技术系2014 年 6 月 23日一、课程设计的目的与要求1二、方案实现与调试 3 掷骰子游戏5 射击游戏7 计算存款本息之和 8肇事逃逸10 礼炮12 汽车加油14 大优惠16 金币19三、课程设计分析与总结23附录 程序清单25一、 课程设计的目的与要求(含设计指标)c语言是一种编程灵活,特色鲜明的程序设计语言。c语言除了基知识,如概念,方法和语 法规则之外更重要的是进行实训,以提高学习者的动手和编程能力,从应试课程转变

2、为实践工具。 这是学习语言的最终目的。结合多年来的教学经验,根据学生的学习情况,为配合教学过程,使“项目教学法”能在本质上促使学生有更大进步,特编写了该C语言程序设计任务书,以 在实训过程中给学生提供帮助。达到如下目的:1在课程结束之前,让学生进一步了解C程序设计语言的编程功能;2让学生扎实掌握C程序设计语言的相关知识;3通过一些有实际意义的程序设计,使学生体会到学以致用,并能将程序设计的知识 与 专业知识有效地结合,更全面系统地了解行业知识。编写程序要求遵循如下基本要求: 模块化程序设计 锯齿型书写格式 必须上机调试通过二、方案实现与调试 掷骰子游戏2.1.1 题目内容的描述1) 两人轮流掷

3、骰子,每次掷两个,每人最多掷 10 次。2) 将每人每次的分值累加计分3) 当两个骰子点数都为 6时,计8分;当两个点数相等且不为两个 6时,计7分;当两 个点数不一样时,计其中点数较小的骰子的点数。4) 结束条件:当双方都掷10次或经过5次后一方累计分数多出另一方的 30%及以上。最 后显示双方分数并判定优胜者。2.1.2输入数据类型、格式和内容限制和输出数据的说明数据类型:整型;内容限制:随机数的产生;输入数据结果:胜利的一方2.1.3 主要模块的算法描述 本算法的思路过程:首先要随机产生随机数,然后进行算法输出数值,执行条 件判断输入结果,最后比较结果,判断胜利的一方。程序流程图图 1

4、掷骰子游戏调试过程及实验结果编辑过程中遇到的困难有:编程思路正确,但是无法正确编写出程序和编程过程缺乏。1 C:UgERSSQ25DESKTDP25l.ODebugOl.exe時二个人第?枕投岀的数5岸一个人第8次投岀的数岸二个人第8次投岀的数 k律一个人第9次投岀的数6b幕二个人第9次投岀的数Ak倩一个人第佃秋投岀的数k常二个人第価秋投出的数Piess any key to c=ontinue第二 第二图2掷骰子游戏射击游戏2.2.1题目内容的描述在程序运行时屏幕上方第一行随机出现一个 符号,要求游戏者输入一个1-80之间的整数, 当用户输入一个整数后,一个*立即从屏幕底端的该整数列向上移动

5、,若移动到屏幕的顶端能撞 上 符号,则游戏者获胜;若没有撞上,则要求再输入一个整数,共允许输入5次,如果一直 没有撞上,则认为游戏者输。提示:1) 输入 符号可以采用printf(c,1)2) 显示*号向上移动:输出一些空行;输出*号;以循环的方式增加延时 (for(i=0;i100000;i+);) ; clrscr ()清屏重新绘制*号。2.2.2输入数据类型、格式和内容限制和输出数据的说明Sys tem( “els”);清楚屏幕,2.2.3主要模块的算法描述本算法的思路过程:首先清楚屏幕,然后循环每行输出* ,依次循环,判断是否击中目标,最后 5次输入结束,或者击中目标结束。程序流程图图

6、 3 射击游戏2.2.4调试过程及实验结果该程序在调试过程中出现的问题是:该题中大体循环是以次数,还是循环的结果作为判断,弄不清楚图 4 射击游戏计算存款本息之和:以“存款利率”为关键字上网搜索目前我国整存整取不同期限我国的银行存款利率,只计算一年(3%)、三年%)和五年%)三种期限。问题:1)要求输入存钱的本金和期限,求到期能从银行得到的利息与本金合计。2)假设存款期限为三十年本金为10万,比较一年、三年和五年滚存三十年后的本息金额。*1)数据类型:长整型;2)内容限制:键入本金与年限;3)输出数据:本息和PI主要模块的算法描述本算法的语言描述:输入限定之内的年份与存款金额,选择对应的年利率

7、计算本息和调试过程及实验结果图 6 计算存款本息之和图 7 计算存款本息之和肇事逃逸题目内容的描述某部闽DT的出租车交通肇事逃逸,现场无人看清后面的四位数字,但三位目击群众提供信息 如下:1) 车牌号后两位相同;2) 车牌号前两位相同;3) 车牌号是一个整数的平方。请编程查出肇事逃逸车辆的车牌号。输入数据类型、格式和内容限制和输出数据的说明1)数据类型:整型;2)内容限制:前两位相同,后两位相同,整数的平方; 3)输出数 据:四位整数主要模块的算法描述本算法的思路描述:前两位,后两位相同,则前两位用i表示,后两位用均表示,用k是100 以内的两位整数,l表示这个四位数,用循环语句依次判断结果适

8、合公式:k*k=l=1000*i+100*i+10*j+j,即为肇事车牌号!礼炮:2.5.1题目内容的描述 鸣放礼炮起源于英国。据说400多年前英国海军用的是火炮。当战舰进入友好国家的 港口之前,或在公海上与友好国家的舰船相遇时,为了表示没有敌意,便把船上大炮内的炮弹统 统放掉,对方的海岸炮舰船也同样做以表示回报。这种做法以后就逐渐成为互致敬意的一种礼仪。 由于当时最大的战舰装有大炮21门,所以鸣炮21响就成了一种最高礼节。有四艘战舰ABCD开始鸣放礼炮各21响,已知A战舰每隔5秒放一次,B战舰每隔6 秒放一次,C战舰每隔7秒放一次,D战舰每隔8秒放一次假设各炮手对时间掌握非常准确,请 问观众

9、共可以听到几次礼炮声输入数据类型、格式和内容限制和输出数据的说明主要模块的算法描述本算法的思路过程:根据条件“A战舰每隔5秒放一次,B战舰每隔6秒放一次,C战舰每隔 7秒放一次,D战舰每隔8秒放一次”确定可能性开依次判断,累计听到的次数,得出结果!程序流程图初始化i=l,j=O否I=168 否是i+;j+是调试过程及实验结果否(i%5=0)ll(i%6=0)ll(i%7=0)ll图8=礼& (i=l00)&”程序在调试过程中出现的问题是:编码时要注意“ ll”,图11礼炮汽车加油*题目内容的描述(i%6=0)ll(i%7=0)ll(i%8=0 )&(i100)辆汽车加满油后可行驶n公里。旅途中

10、有若干个加油站。设计一个有效算法,指出应在哪些加油站停靠加油,使沿途加油次数最少。输入:行有2个正整数N和K(1 = N = 100=K = 100),表示汽车加满油后可行驶N公里,且旅途中有K个加油站。接下来的1行中(i%7=0)ll(i%8=0)& (i120)有K+1个整数,表示第K个加油站与第K-1个加油站之间的距离。第0个加油站表示出发地, 汽车已加满油。第K+1个整数表示第K个加油站与目的地的距离。输出:将编程计算出的最少 加油次数输出。如果无法到达目的地,则输出No Solution。(注意:No和Solution之间有一 个空格)。例如:输入:8 83 2 3 6 5 4 2

11、7 2输出:5输入数据类型、格式和内容限制和输出数据的说明1)数据类型:数组类型;2)内容限制:键入数据:3)用到的主要语句:循环条件判断;4)输出数据:加油次数(整型)主要模块的算法描述本算法的语言描述是:按题目要求输入数据;首先判断可行驶的路程是否足够汽车到达加油站;如果不能到达,则需要加油,在此处记录一次并循环;得出累计加油次数之和算得出结果。图12 礼炮*调试过程及实验结果实验中所遇到的困难是:循环条件判断错误图 13 礼炮大优惠题目内容的描述中国移动推出最新的手机资费优惠方案,按照这个方案Tom的手机每天消费1元,每消费K 元就可以获赠1元,一开始Tom有M元,问最多可以用多少天输入

12、的测试数据为一行,实例包括2个整数M, K(2 = K = M = 1000)。输出一个整数, 表示M元可以用的天数。10 10 1150 20 52输入数据类型、格式和内容限制和输出数据的说明整型,算法的应用,内容数字的限定;主要模块的算法描述开始程序流程图M,K, i=0(2=K=M0值递减的方式运算;调试过程及实验结果实验中所遇到的困难是:没有注意到题目中给定的限制范围。注意大小写 M=M+1图15金币题目内容的描述可用天数i国王用金币奖励他忠诚的侍从。第一天侍从工作结束后,国王奖励了他一个金币;接着的两天侍从工作中(第二天束第三天)的每一天,国王奖励了他两个金币;接着的三天侍从工作中(

13、第四天,第五天,第六天)的每天,国王奖励了他三个金币;接着的四天侍从工作中(第七天,第八天,第九天,第十天)的每一天,国王奖励了他四个金币。这种奖励的模式将是固 定不变的,即在N天侍从工作中的每一天,国王将奖励他N个金币;接着的 N+1 天的侍从工作中的每一天,国王将奖励他 N+1 个金币。要求在给定的天数时,你的程序能够统计国王总共奖励了侍从多少金币。输入数据类型、格式和内容限制和输出数据的说明整型,算法的应用,内容数字的限定;主要模块的算法描述进行总求和;调试过程及实验结果实验中所遇到的困难是:循环条件的出口判断不明确;求和处理不简约;三、课程设计分析与总结由于上学期在语言的学习方面还有很

14、多不足之处,因此,这次课程设计显得特别吃力,很多 不足都暴露了出来。不过最终还是基本完成了此次课程设计的内容。在各个实验中解决问题的基 本流程是:分析问题一分析解决问题的基本流程一选择合适的算法语句一书写程序一调试修改一 按要求书写实验报告。在这些过程中,我认为分析问题的解决流程最为重要,分析好解决流程之 后,就可以清楚的知道自己这一步要干什么,下一步要干什么,思路就显得十分清楚,按照这个 流程解决问题是我感觉做得好的一面。不过也有很多不足,例如:好久没碰C语言了,for, while 之类的循环语句的基本功能都模糊了,在选择运用时还要在课本、网络上熟悉这些内容,还有一 点就是自己对函数、模块化的思想掌握不够,按照实验要求需运用模块化的方

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号