排序查找
采用选择法对15个整数排序,排序完成后各整数按照从大到小的顺序排列。排序完成后输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。
输入
输入共有两行: 第一行输入15个整数. 第二行输入你要查找的整数.
输出
输出你要查找的整数在排好序的数组中是第几个元素.如果该数不在数组中,则输出“wucishu!”。如果输入的数在数组中有多个,则输出此数在排好序后的数组中第一次出现的位置.具体请见Sample Output .
样例输入
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 15
样例输出
1
#include <iostream> using namespace std; int main() { int arr[16]; cin >> arr[1]; for (int i = 2; i < 16; i++) { cin >> arr[i]; for (int j = 1; j < i;j++) { if (arr[j] <= arr[i]) { int k; k = arr[j]; arr[j] = arr[i]; arr[i] = k; } } } int ans,status = 0; cin >> ans; for (int i = 1; i < 16; i++) { if (arr[i] == ans) { cout << i << endl; status = 1; break; } } if (status == 0) { cout << "wucishu!" << endl; } return 0; }