用C语言完成:三、程序功能: 有15个已经排好序的整数存放在一个数组中,输入1个整数,要求用二分查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出无此数。 【输入样例】 6 【输出样例】 7 【程序代码】 #include <stdio.h> int main(void) { int N=15, number, top, bott, mid; int a[15] = { -3,-1,0,1,2,4,6,7,8,9,12,19,21,23, 51}; top = 0; 【____________】 ; scanf("%d", &number); while(top <= bott) { mid = (top + bott) / 2; if(【____________】) { printf("%d\n", mid + 1); break; } else if(number < a[mid]) bott = mid - 1; else 【____________】; } if(top > bott) printf("not found\n"); return 0; }
时间: 2024-04-26 15:25:20 浏览: 52
C语言输入一个整数序列并计算他们的值.rar_C语言输入一个整数序列并计算他们的值_输入序列C语言
5星 · 资源好评率100%
#include <stdio.h>
int main(void) {
int N=15, number, top, bott, mid;
int a[15] = { -3,-1,0,1,2,4,6,7,8,9,12,19,21,23, 51};
top = 0;
bott = N - 1; // 初始化数组下标范围
scanf("%d", &number);
while(top <= bott)
{
mid = (top + bott) / 2;
if(number == a[mid]) // 找到了
{
printf("%d\n", mid + 1);
break;
}
else if(number < a[mid]) bott = mid - 1;
else top = mid + 1;
}
if(top > bott) printf("not found\n"); // 没找到
return 0;
}
阅读全文