




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、沈阳航院设计用纸题目:用折半查找法猜篮球的价格一、课程设计时间201011第2学期第15周,共计1周,20学时。二、课程设计内容用C语言编写软件完成以下任务:用户从键盘输入篮球的价格(假设价格在1200元之间,并且为整数)让计算器从1元开始用折半法猜测篮球的价格。若计算器的猜测价格偏高,用户输入“高”;若计算器的猜测价格偏低,用户就输入“低”;若计算器猜对了,则显示“正确”。三、课程设计要求1 .程序质量:贯彻结构化的程序设计思想。用户界面友好,功能明确,操作方便。用户界面中的菜单至少应包括“输入篮球价格”、“计算器开始猜测”、“退出”3项。代码应适当缩进,并给出必要的注释,以增强程序的可读性
2、。2 .课程设计说明书:课程结束后,上交课程设计说明书和源程序。课程设计说明书的格式和内容参见提供的模板。四、指导教师和学生签字指导教师:学生签名:五、成绩:六、教师评语:II沈阳航院设计用纸4一、需求分析二、设计要求目录12三、主要界面截图四、技术要点五、个人总结六、参考文献七序8899源程沈阳航院设计用纸一、需求分析经过对程序设计题目的分析可知,整个程序大致分为三个模块,其中每一个模块对应一个函数,实现一个功能,他们的功能分别是:篮球价格获取函数(get),出现目录的输出函数(men。,篮球价格猜测函数(guess),以及主函数(main)。1、篮球价格获取函数主要实现程序最初运行时用户对
3、篮球价格的设定(要求价格在1-200元之间,并且为整数,若超出范围则提示重新输入);2、目录输出函数在程序运行时输出目录,使用户界面更加友好3、篮球价格猜测函数一实现的功能是让计算器从1元开始用折半法猜测篮球的价格。若计算器的猜测价格偏高,用户输入“g”;若计算器的猜测价格偏低,用户就输入“d”;若计算器猜对了,则显示“正确”。;i沈阳航院设计用纸12、设计分析(1)篮球价格获取函数(get)定义变量初始化当输入价格不在1-200元以内提示用户输入篮球价格输入价格给变量price把price值返回给guess函数输由“猜测正确”三、主要界面截图JOJx*赏迎使月圻更靖京肆价格程序*:MifXK
4、WMMKW:WM-mT仁喻人/球价格,后午甯测3.量由哲子矗黄鼻*M13i,期履履M葡一具鹏用再一将鼻内神耳具看can元N内.反权 所有.劳 冒 5 宠 M UMM . M WtWMHWMKMOiM MM*200元之内.评且更求为整数八力自且我求为整数):.H exeJHJx*事梵*M11斐制*1堇邕M10*现加*箕迎使用寺尸丰注晴建球价格程序一孙玉就,算看列*算片第HMK仁喻人出球价格,.子午喃测力息出他声瓦技所育.力冒必究弁缸280元之内.L许施氤前入篮外价格S00元之内.日且夏求汽整豌” 210 蚌且妥束为整数,:1、用套锻寸啰i如果价格低,请输入,果为15%箱测结是正确?胃鼻彳时WM
5、稠:M*lfW 晚-清土4韭-+口三 的W于 崎 汁四、技术要点本程序主要由两个自定义函数和一个主函数组成,其中主函数以菜单的形式调用其他函数来实现要求的所有功能。在这些函数当中,添加数据函数、删除数据函数和排序函数是程序中较为核心的部分,下面分别进行说明。1、篮球价格获取函数get由于在题设中对篮球的价格进行了设定,所以必须在此函数中进行对被输入的篮球价格作出判断,并提示用户重新输入一个符合条件的价格,因此在此处用一个while循环进行价格的获取,在最后将获取的价格返回给篮球价格猜测函数guess。具体程序段如下:intget(void)/*定义int格式的篮球价格输入函数*/intpric
6、e;while(price200)printf(请输入篮球价格(200元之内,并且要求为整数):);scanf(%d,&price);return(price);2、目录输出函数该函数没有具体的功能,只负责程序目录的输出:在被主函数调用后用一连串的printf函数进行输出,形成一个良好的用户界面。具体程序段如下:voidmenu()printf(”*欢迎使用折半法猜篮球价格程序printf(*n);printf(”*版权所有,仿冒必究*n);printf(n);printf(1.输入篮球价格n);printf(2.开始猜测n);printf(3.退出程序n);printf(n);”*n);*3
7、、篮球价格猜测函数guess题目要求的篮球价格猜测的方法是折半法,即先用一个处于比较范围中央的数值与被比较数值进行比较,由用户对比较结果作出判断,通过循环的多次比较、用户判断、程序自动赋值,最终找到与被比较数值相同的结果,在此函数中使用了strcmp函数对用户输入的判断结果进行判断后输出提示以进行下一步用户判断。具体的程序段如下:voidguess(intplace)/*篮球价格猜测函数,参数为int类型的place*/intm,l=1,h=200;chars30=;while(m=(l+h)/2)!=place)printf(计算器猜测的价格是:dn,m);printf(如果价格高,请输入“
8、g”;如果价格低,请输入“d”n);fflush(stdin);if(strcmp(gets(s),g)=0)/*strcmp函数比较输入的字符与字符g的大小,并给以判断*/h=m-1;elseif(strcmp(s,d)=0)/*strcmp函数比较输入的字符与字符d的大小,并给以判断*/l=m+1;printf(计算器所猜的结果为d,猜测结果正确!n,m);五、个人总结通过20个学时的努力,我完成了这次的C语言程序设计任务。以往我们只进行单一功能、单一片段的程序编写,任务简单。而这次的任务给了我们一个全新的视角,让我们进行一个全局性的“小”工程,从而完成一个多功能、各部分联系紧密的功能性程
9、序体,实现了由部分到整体的飞跃,让我获益匪浅。六、参考文献谭浩强.C程序设计.北京:清华大学出版社,2005七、源程序#include#include#include/*为exit函数所在的头文件*/#include/*为getch函数所在的头文件*/voidmenu();intget(void)/*定义int格式的篮球价格输入函数*/intprice;while(price200)printf(请输入篮球价格(200元之内,并且要求为整数):);scanf(%d,&price);return(price);voidmenu()printf(*欢迎使用折半法猜篮球价格程序*n,);printf
10、(n);printf(1.输入篮球价格n);printf(2.开始猜测n);printf(3.退出程序n);printf(n);printf(*n);printf(”*版权所有,仿冒必究”*n);*voidguess(intplace)/*篮球价格彳#测函数,参数为int类型的place*/intm,l=1,h=200;chars30=;while(m=(l+h)/2)!=place)printf(计算器猜测的价格是:dn,m);printf(如果价格高,请输入g;如果价格低,请输入dn);fflush(stdin);if(strcmp(gets(s),g)=0)/*strcmp函数比较输入的字符与字符g的大小,并给以判断*/h=m-1;elseif(strcmp(s,d)=0)/*strcmp函数比较输入的字符与字符d的大小,并给以判断*/l=m+1;printf(计
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年双方购销合同
- 2025年医疗器械销售合同范本的应用与实践
- 2025智能合同管理与招投标流程
- 2025房产租赁合同书长期性
- 二零二五禽畜委托养殖合同书
- 普通装修合同书
- 二零二五中介二手房合同书范例
- 二零二五版股权转让和代持股协议
- 如何理解2025年的赠与合同
- 2025基金传真交易协议合同范本
- 县域产业布局与升级-深度研究
- 第十六周《“粽”享多彩端午深耕文化传承》主题班会
- 日间患者流程护理质量改善项目汇报
- 创意美术网络安全课件
- 上海电信2025年度智慧城市合作协议2篇
- 2024燃煤发电企业安全生产标准化达标评级标准
- 产前检查妇产科教学课件
- 气球婚礼派对合同范例
- 2024无人机测评规范
- 术中停电应急预案
- 【高分复习笔记】许莉娅《个案工作》(第2版)笔记和课后习题详解
评论
0/150
提交评论