c语言-整型数组中查找具体某个数-二分查找法(折半查找算法)

it2025-04-16  2

二分查找法

题目:编写在一个整型有序数组中查找具体的某个数。 要求:找到了就打印数字下标,找不到则输出“找不到“”。

代码:

#include<stdio.h> #pragma warning (disable:4996) int main() { int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int left = 0; int right = sizeof (arr) / sizeof (arr[0])-1; int key = 0; printf("输入你想查找的数\n"); scanf("%d", &key); int mid = 0; while (left <= right) { mid = (left + right) / 2; if (arr[mid] > key) { right = mid - 1; } else if (arr[mid] < key) { left = mid + 1; } else break; } if (left <= right) { printf("找到了,下标是%d\n", mid); } else printf("找不到\n"); system("pause"); }
最新回复(0)