【题目描述】
在一个序列(下标从1开始)中查找一个给定的值,输出第一次出现的位置。
【输入】
第一行包含一个正整数n,表示序列中元素个数。1 ≤n≤ 10000。第二行包含n个整数,依次给出序列的每个元素,相邻两个整数之间用单个空格隔开。元素的绝对值不超过10000。第三行包含一个整数x,为需要查找的特定值。x的绝对值不超过10000。
【输出】
若序列中存在x,输出x第一次出现的下标;否则输出-1。
【输入样例】
5
2 3 6 7 3
3
【输出样例】
2
代码
#include<cstdio>
using namespace std;
int a[10001],n,t,i,s;
int main()
{
scanf("%d",&n);
for(i=1;i<=n;++i)
scanf("%d",&a[i]);
scanf("%d",&t);
for(i=0;i<n;i++)
{
if(a[i]==t)
{
s=i;
break;
}
}
if(s==0)
{
printf("-1");
return 0;
}
printf("%d\n",s);
return 0;
}
#include<cstdio>
using namespace std;
int a[10001],n,t,i,s=-1;
int main()
{
scanf("%d",&n);
for(i=1;i<=n;++i)
scanf("%d",&a[i]);
scanf("%d",&t);
i=0;
while(i<=n&&s<0)
{
i+=1;
if(a[i]==t)
s=i;
}
printf("%d\n",s);
return 0;
}