蓝桥杯题解-查找整数-BASIC-5

原题地址:查找整数

问题描述

给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。

输入格式

第一行包含一个整数n。

第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。

第三行包含一个整数a,为待查找的数。

输出格式

如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。

样例输入

6
1 9 4 8 3 9
9

样例输出

2
数据规模与约定
1 <= n <= 1000。

解:

由于数据存入后才能搜索,因此用第一个for来存入数据,第二个for来用下标遍历数组。找到后if判断并break,不然又第二个数据,会覆盖第一个保存的值。

代码:
#include"iostream"
using namespace std;

int main()
{
	int z[1000],n,a,flag=-1;//flag标记位置,默认为-1
	cin>>n;
	for(int i=0;i<n;i++)//输入
		cin>>z[i];
	cin>>a;
	for(int i=0;i<n;i++)//遍历
		if(z[i]==a)
		{
			flag=i+1;
			break;//发现发现第一个就跳出循环
		}
		cout<<flag;
	return 0;
}

题解目录

猜你喜欢

转载自blog.csdn.net/qq_43508196/article/details/85838118