题目描述

在一个序列(下标从0开始)中查找一个给定的值,输出第一次出现的位置。

输入

第一行包含一个正整数n,表示序列中元素个数。1 ≤n≤ 10000。第二行包含n个整数,依次给出序列的每个元素,相邻两个整数之间用单个空格隔开。元素的绝对值不超过10000。第三行包含一个整数x,为需要查找的特定值。x的绝对值不超过10000。

输出

若序列中存在x,输出x第一次出现的下标;否则输出-1。

样例输入 
5
2 3 6 7 3
3
样例输出 

1

代码

#include<bits/stdc++.h>
using namespace std;
int a[10005];
int main()
{   
	int n,x;
	cin>>n;
	for(int i=0;i<n;i++){    // 循环 n 次,依次读取 n 个整数,并将它们存储到数组 a 中
		cin>>a[i];
	} 
	cin>>x;
	for(int i=0;i<n;i++)    // 遍历数组 a
	{
		if(a[i]==x)     // 判断数组 a 中的当前元素是否等于目标元素 x
		{
			cout<<i; 
			return 0;    // 找到目标元素后,程序提前结束,返回 0 表示正常退出
		}
	}
	cout<<"-1";  // 如果遍历完整个数组都没有找到目标元素,输出 -1
	return 0; 
}

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐