初始化int类型数组 //data1[]={1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20} 提示用户输入一个数字,用c++应用顺序查找函数模板找出它的位置
时间: 2023-06-17 18:04:14 浏览: 119
下面是一种可能的实现方式:
```c++
#include <iostream>
using namespace std;
template<typename T>
int sequentialSearch(T arr[], int n, T key) {
for (int i = 0; i < n; i++) {
if (arr[i] == key) {
return i;
}
}
return -1; // 表示未找到
}
int main() {
int data1[] = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20};
int n = sizeof(data1) / sizeof(int);
int key;
cout << "请输入一个数字:";
cin >> key;
int pos = sequentialSearch(data1, n, key);
if (pos != -1) {
cout << "找到了,位置是:" << pos << endl;
} else {
cout << "未找到" << endl;
}
return 0;
}
```
该程序中使用了一个函数模板 `sequentialSearch`,接受一个数组、数组长度和要查找的关键字,返回关键字在数组中的位置。如果未找到则返回 -1。在 `main` 函数中,先初始化了一个 int 类型的数组 `data1`,并计算出数组长度。然后提示用户输入一个数字,调用 `sequentialSearch` 函数查找关键字在数组中的位置,并输出结果。
阅读全文