一、解题思路
1.宏定义数组元素个数为ARRNUM=10
函数原型声明void AscendSorting(int a[]);
函数原型声明int Bisearch(int x,int *a[],int left, int right);
2.设计函数
2.1设计函数void AscendSorting(int a[])
2.1.1函数功能
函数功能为实现对数组进行由小到大排序,排序方法选择效率较高的选择法
2.1.2 函数内部
定义变量int i=0,j=0,k=0;
使用循环的嵌套实现由小到大的排序
2.1.3 循环内部
外层循环for(i=0;i<ARRNUM;i++)内对k进行赋值k=i
内层循环for(j=i+1;j<ARRNUM;j++)内用if语句判断a[j]<a[k]是否成立,成立则k=j
内层循环结束则用if语句判断k!=i是否成立,成立则令a[i]=a[k]
2.2设计函数 int Bisearch(int x,int *a[],int left,int right)
2.2.1函数功能
如果找到对应数,函数返回值为对应数组下表,否则返回-1
函数功能为运行折半查找法,在一个有序序列中查找某一特定的数
2.2.2函数内部
定义变量mid并初始化为0,int mid=0;
用while循环实现查找,当查找范围下界小于等于查找范围上界时执行循环,循环判断条件是left<=right
循环内部
每一次循环开始时,将mid初始化为查找范围的中位数对应下标,mi