两学一做微电影剧本:有15个数存放在一个数组中,输入一个数,要求用半查找法找出该数是数组中第几个元素的值。
来源:百度文库 编辑:查人人中国名人网 时间:2024/04/29 11:01:24
如该数数不在数组中,则输出“无此数”。15个数用赋值的方法在程序中给出。
首先要保证这个数组是有序排列的,下面假设其为升序
/*
二分法查找升序长度为len的数组a中的target元素
查找成功则返回下标
否则,返回-1
*/
int bsearch(int *a,int len,int target)
{
int d=0,u=len,mid,i;
/*检查数组是否已排序*/
for(i=0;i<len;i++)
if (*(a+i)>*(a+i+1))
return -1;
/*查找开始*/
while(d<=u)
{
mid=(d+u)/2;
if (*(a+mid)==target)
return mid;
else if (*(a+mid)<target) d=mid+1;
else u=mid-1;
}
return -1;
}
如果在按半查找法找,那这15个数字应该是有顺序
如果没有顺序不能查找
有15个数存放在一个数组中,输入一个数,要求用半查找法找出该数是数组中第几个元素的值。
有15个数那从大到小顺序排列存放在1个数组中,输入一个数找出该数是这个数组的第几个元素的值
有15个数按大由小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该组中第几个元素的值.
有十五个数按由大到小顺序放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值
有15个数按由大到小的顺序纯放在一个数组中
已有一个排好序的数组,要求输入一个数后,按原来的规律将它插入数组中
有一个以排好序的一维数组,今输入一个数,要求按原来顺序的规律将它插入到数组中。(数组长度不限)
要求用户输入5位同学的成绩,将输入的成绩存放在一个数组中。并将数组排序输出。
c语言 已有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。
如果输入2个数,放在一个一维数组里?