问题描述
输出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。
输入格式
第一行包含一个整数a。
第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。
第三行包含一个整数a,为待查找的数。
输出格式
如果a在生活苏烈中出现了,输出它第一次出现的位置(位置从一开始编号),否则输出-1。
样例输入
6
1 9 4 8 3 9
9
样例输出
2
数据规模与约定
n >= 1 && n <= 1000
解题思路
给定的数列事先没有赋初值,需要我们输入n给他赋初值,那就需要用到 new int[ ];来给一个没有赋初值的整型数组分配动态内存。
代码实现
C++
#include<iostream>
using namespace std;
int main()
{
int n,*a,i,A;
cin>>n;
a = new int[n];//new int[]:申请一个没有赋初值的动态整型数组
for( i = 0;i < n;i++)
{
cin>>a[i];//遍历输出
}
cin>>A;
for( i = 0;i < n;i++)
{
if(a[i] == A)
break;
}
if(i == n) //没有找到A出现的位置
cout<<"-1"<<endl;
else //找到A出现的位置
cout<<i + 1<<endl;
system("pause");
return 0;
}