查找整数
题目描述
问题描述
给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。
输入格式
第一行包含一个整数n。
第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。
第三行包含一个整数a,为待查找的数。
输出格式
如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。
样例输入
6
1 9 4 8 3 9
9
样例输出
2
数据规模与约定
1 <= n <= 1000。
题目分析
查找数字包括找到与没找到两种状态,找到返回所在位置,没找到返回-1,因此需要一个状态量来标记来判断是否找到
代码实现
#include <iostream> #include <bits/stdc++.h> using namespace std; int main(){ int n,m; int t=0; cin>>n; int a[n]; for(int i=0;i<n;i++) cin>>a[i]; cin>>m; for(int i=0;i<n;i++){ if(m==a[i]){ t=i+1;break; } } if(t==0) t=-1; cout<<t<<endl; return 0; }
|
运行结果
6 1 9 4 8 3 9 9 2
-------------------------------- Process exited after 32.47 seconds with return value 0 请按任意键继续. . .
|
总结
对于数的查找,就是逐一进行匹配,返回其下标即可,若没有找到返回-1即可