【问题描述】
输入n个整型数据,查找其中是否存在整数x ,如果存在输出其下标号。要求:n由输入决定,n个数据存放在数组中,x从键盘输入,查找过程编写成函数,该函数的首部定义如下:
int findx(int s[],int n,int x);
功能是在s这个数组的前n个数据中查找是否存在x,如果存在x,输出x在数组中的下标(如果存在多个,输出下标值最小的那个下标),如果不存在,则输出-1.
【输入形式】
输入为三行,第一行为n值,第二行是n个整数(数据之间用空格隔开),第三行是x值
【输出形式】
要么-1,要么是0-(n-1)之间的一个整数。数据前面无空格
样例输入 | 样例输出 |
5 12 34 12 32 2 12 | 0 |
#include <iostream>
using namespace std;
int findx(int s[], int n, int x)
{
for (int i = 0; i < n; i++)
{
if (s[i] == x)
return i;//返回值即为数组的下标
}
return -1;
}
int main()
{
int n,x;
cin >> n;
int s[100];
for (int i = 0; i < n; i++)
{
cin >> s[i];
}
cin >> x;
int index = findx(s, n, x);
if (index != -1) {
cout << index << endl;
}
else {
cout << "-1" << endl;
}
return 0;
}