- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言期末大作业
学 院 航天学院 班 级 学 号 2010300484 姓 名 康丹青
摘要
我所完成的是算法型大作业的第七道题,编写查找算法的演习程序。以下所要介绍的就是如何正确运用“折半查找算法”实现对一组顺序排列数的查找。
设计思路是:本程序先利用标准输入函数,输入一组数字和待查找的变量,并存储到数组中去,然后利用“冒泡排序法“对该无序数组进行从小到大排序,进而调用查找函数对该组数进行查找,并输出所得值,来实现查找功能的。
目录
1 摘要 3
1.1 设计题目 3
1.2 设计内容 3
1.3 开发工具 3
1.4 应用平台 3
2 详细设计 3
2.1 程序结构 3
2.2 主要功能 3
2.3 函数实现 3
2.4 开发日志 4
3 程序调试及运行 4
3.1 程序运行结果 4
3.2 程序使用说明 4
3.3 程序开发总结 4
4 附件(源程序) 4
1 摘要
1.1 设计题目
查找算法
1.2 设计内容
本程序建立了一个CZSF.cbp的C程序工程。具体内容为如下:
#include stdio.h /*预处理命令*/
#include stdlib.h /*预处理命令*/
#include kspx.h /*自定义的头文件,包含快速排序函数kspx的相关信息*/
int main()
{
void search(int a[],int b,int n); /*对能够实现程序查找功能的search函数进行声明*/
int a[50],b,n,i; /*定义整形数组和变量*/
printf(input the sum of the numbers:);
scanf(%d,n); /*输入所要查找得数的范围*/
printf(input %d numbers:,n);
for(i=0;in;i++) scanf(%d,a[i]); /*依次输入各个数,并存储到数组中去*/
printf(the need number:);
scanf(%d,b); /*输入所要查找得数*/
kspx(a,n); /*调用快速排序函数对该组数进行排序*/
search(a,b,n); /*利用查找函数进行查找*/
return 0;
}
void search(int a[],int b,int n) /*search函数的定义*/
{
int x1=0,x2=n-1,mid,j=0; /*定义变量想,x1,x2,mid和j*/
while(x1=x2) /*循环条件,x1和x2分别为区间左右端点*/
{
mid=(x1+x2)/2; /*mid为区间中值*/
if(ba[mid]) x2=mid-1;
else if(ba[mid]) x1=mid+1; /* 依据查找数b和a[mid] 的大小关系确定新区间*/
else
{
printf(%d,++mid); /*输出b所在该顺序数组中的位置*/
j=1;
break; /*发现b,跳出循环*/
}
}
if(j==0) printf(no found!); /*判断b是否在该组数中*/
}
1.3 开发工具
Code Blocks 10.05
1.4 应用平台
Windows 2000/XP/Vista 32位
2 详细设计
2.1 程序结构
该程序功能的实现是有三个函数来共同完成的,其中main函数是系统主调函数,为顺序结构,其余两个函数在main函数中被调用。kspx函数为排序函数,不属于报告范围。Search函数为查找函数,它主要是由一个当型循环体内部穿插选择语句所构成的。
main函数中的局部变量n和b通过值传递的方式传给search函数中的形参变量n和b,指针常量a通过地址传递的方式传给search函数中的指针变量a,这样search函数就可以调用主函数中的数值了。函数调用结束后形参变量释放,并得到返回值传给主调函数。
2.2 主要功能
该程序的主要功能是判断一组数中是否含有某一已知变量,若有,就对该组数进行顺序排列,并输出该变量在数组中的位置,若没有,就输出“no found!”。功能的实现主要是由kspx函数和searc
您可能关注的文档
- 2013天津国耀紫溪别墅营销推广策略与执行(包含价格策略、认筹蓄客)69p.pptx
- 2013新交规科目一题库.doc
- 2013新交规驾考通关秘籍 高手开车经验总结与上路七大驾驶技巧.doc
- 2013教师招考 教育学、心理学选择题专项练习.doc
- 2013手术室护理技术.ppt
- 2013新交通法规最新最全的扣分标准.ppt
- 2013房地产项目包装方法浅谈-工地围挡.pptx
- 2013新劳动法实施 企业劳务外包规避同工同酬.doc
- 2013建发房产-元宵节活动方案-中国房地产50强,福建知名企业--建发房产元宵活动方案,实用性强.ppt
- 2013春北京航空航天大学远程教育高起专综合试卷入学测试复习题.doc
文档评论(0)