用折半查找法猜篮球的价格.doc_第1页
用折半查找法猜篮球的价格.doc_第2页
用折半查找法猜篮球的价格.doc_第3页
用折半查找法猜篮球的价格.doc_第4页
用折半查找法猜篮球的价格.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

沈 阳 航 空 工 业 学 院 课程设计 学 号 200604021081班 级 6402103姓 名 高健文指导教师 刘 成2007年 9 月 18 日沈阳航空工业学院课程设计任务书电子工程系 电子信息工程专业 6402103班 学号200604021081一课程设计题目:用折半查找法猜篮球的价格。二课程设计工作自2007年9月10日起至2007年9月14日止三程设计内容:用C语言编写软件完成以下任务:体要求如下:1 输出菜单选项。2 从键盘输入篮球价格(设价格在1200元之间,并且为整数)。3 让计算机从1元开始用折半法猜测篮球价格。若计算机猜测的价格偏高,用户输入“高”,若计算机猜测价格偏低,用户输入“低”,若计算机猜对了,则显示“正确”。四课程设计要求1程序质量 彻结构化的程序设计思想。 用户界面友好,功能明确,操作方便。 户界面中的菜单至少应包括“输入篮球价格”,“计算器开始猜测”,“退出”3项。 码应适当缩进,并给出必要的注释,以增强程序的可读性。2课程设计说明书:课程结束后,上交课程设计说明书和源程序。课程设计说明书的内容如下:课程设计任务书程序设计题目需求分析(分析题目的要求)程序框图(总体框图和各功能模块框图,使用传统流程图或框图)核心技术的实现方法及程序源代码及注释个人总结参考资料指导教师:_学生签名:_一 程序设计题目 2 二 题目分析 2 三 程序流程图 5四 核心技术的实现方法及程序段 7五 个人总结 11六 参考文献 12一程序设计题目1 输出菜单选项。2 从键盘输入篮球价格(设价格在1200元之间,并且为整数)。3 让计算机从1元开始用折半法猜测篮球价格。若计算机猜测的价格偏高,用户输入“高”,若计算机猜测价格偏低,用户输入“低”,若计算机猜对了,则显示“正确”。二题目分析1、显示菜单函数 主要实现显示程序设计的总体步骤和功能,还有接下来显示的分步骤用来实现各个函数的具体功能,以便实现其它各自定义函数的作用。2 输入篮球价格函数 是用户给篮球的一个真实价格,为下一步计算机猜测篮球价格提供数据依据。3、猜测篮球价格函数 计算机 对篮球价格进行猜测,通过用户输入的“高”和“低”给计算机运用折半查找法提供大方向,进行多次循环,最终达到猜测出篮球真实价格的目的。除上面介绍的功能之外,程序还具有退出功能,可以在程序运行当中循环执行所有的功能,并根据需要终止程序的执行三程序流程图1整体设计定义变量 int choice,value;将menuchoice()函数返回值赋给变量choice() choice!=3 choice= 1 是 否 输入篮球 是 否价格 猜测篮球价格退出主函数2功能函数模块框图 (1)显示菜单函数 输入菜单选项给变量 ret 返回ret的值 定义变量初始化 fh asdfasdffsdfasdf(2)输入篮球价格函数定义变量初始化当输入价格不在1-200元以内提示用户输入篮球价格输入价格给变量price把price值带回(3)猜测篮球价格函数变量初始化mid=(low+high)/2;当赋给mid的值不等于真实价格时 输入字符串判断是否偏高否是把mid+1的值赋值给low变量把mid-1的值赋值给high 变量 四核心技术的实现方法及程序段本程序主要由一个主函数和三个自定义函数组成,其中主函数以菜单的形式调用其他函数来实现要求的所有功能。下面分别对各个自定义函数进行说明。1、显示菜单函数定义整型的选择变量,这是一个主菜单(MenuChoice(),数字变量(ret),输入整型的ret值,并返回给主函数中的(choice= MenuChoice(),当返回的ret值等于3时,直接跳出当前函数。当ret值为1时,进入“输入篮球价格”函数,当ret值为2时,进入“猜测篮球价格”函数。 这是一个菜单函数包含的:/*显示菜单0*/int MenuChoice(void) int ret; printf(1 - 输入篮球价格n2 - 计算器开始猜测n3 - 退出n); scanf(%d, &ret); return (ret);2、输入篮球价格函数 用户输入一个价格,对这个PRICE进行讨论。while (price 200) ,这是一个把价格限制在1200内的函数,如不在这个范围内的话会输出:Enter the price::直到输入的在1-200之间才会进行运算。/*得到篮球的实际价格*/int GetPrice(void) int price; while (price 200) printf(Enter the price: ); scanf(%d, &price); return (price);3、猜测篮球价格函数定义了两个整型变量,low,high.这分别是1,200。用折半法来运算: while (mid = (low + high) / 2) != price),如果猜测的比实际的高了。你就输入HIGH,若低了你就输入LOW, if (strcmp(gets(s), high) = 0) high = mid - 1; else if (strcmp(s, low) = 0) low = mid + 1; /*猜测篮球的价格*/void GuessPrice(int place) int mid, low = 1, high = 200; char s30 = ; while (mid = (low + high) / 2) != place) printf(The price is: %dn, mid);/*显示计算机预计的价格*/ if (strcmp(gets(s), high) = 0)/*如果价格高,用户就输入high*/ high = mid - 1; else if (strcmp(s, low) = 0)/*如果价格低,用户就输入low*/ low = mid + 1; 五个人总结通过这次课设让我对计算机的学习又有了新的认识。而且学习到了做人要有坚持不懈的精神。比如说起初在得到课设题目时,根本无从下手,不知道该从什么地方开始。后来在同学的帮助下,我渐渐的知道了程序的编制的总体思路,然后继续努力研究,最终才设计出了我的程序。我懂得了如何在面对问题时去先看到问题的本质,如何在有很多不明白的时候去找到自己会的地方,从而一点点的理解,学会如何在一个问题,不知所措的时候,去问一问老师和同学,在老师的帮助和指导下,让我学到了程序的单步运行,和监视断点等方法来解决一些算法的错误,再运用对称的方法和观察法去查找语法错误。另外在本次实习中,我还深刻的体会到计算机方面的统一的重要性,因为在运行程序的过程中,我发现同一个程序在不同型号的计算机上运行却得到不同的结果,这样回给程序的编辑带来很大麻烦,因此我深深的体会到在计算机方面统一的重要性。 在本次实习中,我用规定的时间把程序编完,并达到了题目的要求。而且还早要求的基础上,进一步改进了程序,使程序的界面更加友好,更加满足大众的要求。这次课设让我解决问题的能力提高了,不仅如此,还让我们同学之间的友情变的更深了,因为一个个问题在讨论中解决,

温馨提示

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

评论

0/150

提交评论