用折半查找法猜篮球的价格.docx

上传人:b****0 文档编号:9428211 上传时间:2023-05-19 格式:DOCX 页数:12 大小:114.77KB
下载 相关 举报
用折半查找法猜篮球的价格.docx_第1页
第1页 / 共12页
用折半查找法猜篮球的价格.docx_第2页
第2页 / 共12页
用折半查找法猜篮球的价格.docx_第3页
第3页 / 共12页
用折半查找法猜篮球的价格.docx_第4页
第4页 / 共12页
用折半查找法猜篮球的价格.docx_第5页
第5页 / 共12页
用折半查找法猜篮球的价格.docx_第6页
第6页 / 共12页
用折半查找法猜篮球的价格.docx_第7页
第7页 / 共12页
用折半查找法猜篮球的价格.docx_第8页
第8页 / 共12页
用折半查找法猜篮球的价格.docx_第9页
第9页 / 共12页
用折半查找法猜篮球的价格.docx_第10页
第10页 / 共12页
用折半查找法猜篮球的价格.docx_第11页
第11页 / 共12页
用折半查找法猜篮球的价格.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

用折半查找法猜篮球的价格.docx

《用折半查找法猜篮球的价格.docx》由会员分享,可在线阅读,更多相关《用折半查找法猜篮球的价格.docx(12页珍藏版)》请在冰点文库上搜索。

用折半查找法猜篮球的价格.docx

用折半查找法猜篮球的价格

沈阳航空工业学院

课程设计

学号200604021117

班级6402104

姓名冯志强

指导教师刘成

2007年9月15日

沈阳航空工业学院

课程设计任务书

院系:

电子专业:

电子信息工程班级:

6402104

学号:

200604021117题目:

用折半查找法猜篮球的价格

一、课程设计时间

2007年9月10日至2007年9月14日,共计1周,20学时。

二、课程设计内容

用C语言编写软件完成以下任务:

用户从键盘输入篮球的价格(假设价格在1~200元之间,并且为整数),让计算器从1元开始用折半法猜测篮球的价格。

若计算器的猜测价格偏高,用户输入“高”;若计算器的猜测价格偏低,用户就输入“低”;若计算器猜对了,则显示“正确”。

三、课程设计要求

1.程序质量:

✧贯彻结构化的程序设计思想。

✧用户界面友好,功能明确,操作方便。

✧用户界面中的菜单至少应包括“输入篮球价格”、“计算器开始猜测”、“退出”3项。

✧代码应适当缩进,并给出必要的注释,以增强程序的可读性。

2.课程设计说明书:

课程结束后,上交课程设计说明书和源程序。

课程设计说明书的格式和内容参见提供的模板。

四、指导教师和学生签字

指导教师:

________学生签名:

________

五、成绩:

六、教师评语:

 

目录

一、需求分析1

二、程序流程图2

三、核心技术的实现说明及相应程序段5

四、个人总结8

五、参考文献8

六、源程序9

 

一、需求分析

经过对程序设计题目的分析可知,整个程序的设计实现大致分为三个模块,其中每一个模块对应一个函数,他们的功能分别是:

输入篮球价格函数(getprice),猜测篮球价格函数(guessprice),以及主函数(main)。

1、输入篮球价格函数主要实现程序最初运行时用户对篮球价格的设定(价格在1-200元之间,并且为整数);

2、猜测篮球价格函数实现的功能是让计算器从1元开始用折半法猜测篮球的价格。

若计算器的猜测价格偏高,用户输入“高”;若计算器的猜测价格偏低,用户就输入“低”;若计算器猜对了,则显示“正确”。

3、主函数实现的是程序界面的打印,以及根据用户输入的指令实现功能函数的调用。

 

二、程序流程图

1、程序总体结构图

图1程序总体结构图

 

图1程序总体结构图

 

2、具体功能框图

(1)输入篮球价格函数(getprice)

定义变量初始化

当输入价格不在1-200元以内

提示用户输入篮球价格

输入价格给变量price

把price值带回主函数

 

图2添加学生数据函数

图2输入篮球价格函数流程图

(2)猜测篮球价格函数(guessprice)

变量初始化

mid=(low+high)/2;当赋给mid的值不等于真实价格时

输入字符串判断是否偏高

把mid+1的值赋值

给low变量

把mid-1的值赋值

给high变量

 

图3猜测篮球价格函数流程图

 

三、核心技术的实现说明及相应程序段

本程序主要由两个自定义函数和一个主函数组成,其中主函数以菜单的形式调用其它函数来实现要求的所有功能。

在这些函数当中,输入篮球价格函数和猜测篮球价格函数是程序中较为核心的部分,下面进行说明。

1、输入篮球价格函数

用户输入一个价格,对这个PRICE进行讨论。

把价格限制在1—200内,如不在这个范围内的话会输出:

“请输入价格(在1~200元之间,并且为整数):

”直到输入的在1-200之间才会进行运算。

intgetprice(void)

{

intprice;

while(price<1||price>200)

{

printf("请输入价格(在1~200元之间,并且为整数):

");

scanf("%d",&price);

}

return(price);

}

图4程序主界面

2、猜测篮球价格函数

定义了两个整型变量,low,high.这分别是1,200。

用折半法来运算:

while((mid=(low+high)/2)!

=price),如果猜测的比实际的高了。

你就输入“高”,若低了你就输入“低”。

具体的程序段如下:

voidguessprice(intplace)

{

intmid,low=1,high=200;

chars[30]={""};

while((mid=(low+high)/2)!

=place)

{

printf("计算机猜测的价格是:

%d\n",mid);

printf("如果价格高,请输入“高”;如果价格低,请输入“低”\n");

if(strcmp(gets(s),"高")==0)

high=mid-1;

elseif(strcmp(s,"低")==0)

low=mid+1;

}

printf("猜测结果正确,篮球的价格是%d\n",mid);

}

图5程序运行截图

四、个人总结

这次课设让我解决问题的能力提高了,不仅如此,还让我们同学之间的友情变的更深了,因为一个个问题在讨论中解决,让我们彼此更加了解了。

总之,在害怕课设,从把它当作一个任务,到把它当作一个证明自己的方法,这样的转变不能不说自己又成熟了一点了。

这次课设让我受益匪浅。

 

五、参考文献

1谭浩强.C程序设计.北京:

清华大学出版社,2005

2刘成等.C语言程序设计实验指导与习题集.北京:

中国铁道出版社,2006

 

六、源程序

#include

#include

intgetprice(void)

{

intprice;

while(price<1||price>200)

{

printf("请输入价格(在1~200元之间,并且为整数):

");

scanf("%d",&price);

}

return(price);

}

voidguessprice(intplace)

{

intmid,low=1,high=200;

chars[30]={""};

while((mid=(low+high)/2)!

=place)

{

printf("计算机猜测的价格是:

%d\n",mid);

printf("如果价格高,请输入“高”;如果价格低,请输入“低”\n");

if(strcmp(gets(s),"高")==0)

high=mid-1;

elseif(strcmp(s,"低")==0)

low=mid+1;

}

printf("猜测结果正确,篮球的价格是%d\n",mid);

}

 

main()

{

intprice;

printf

("****************************************************\n"

"*****************************************************\n"

"***********欢迎使用折半查找法猜篮球价格程序**********\n"

"*****************************************************\n"

"******************输入l输入篮球价格*****************\n"

"********************输入s开始猜测*******************\n"

"********************输入q退出程序*******************\n"

"***************************************************\n");

while

(1)

switch(getch())

{

case'l':

price=getprice();break;

case's':

guessprice(price);break;

case'q':

printf("**********6402104班冯志强版权所有**************);exit(0);

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2