蓝桥杯:BASIC-5 查找整数

问题描述:

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

输入格式:

第一行包含一个整数n。

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

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

输出格式:

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

样例输入:

6
1 9 4 8 3 9
9

样例输出:

2

数据规模与约定:

1 <= n <= 1000。

题解:

思路:首先要定一个数组,为了防止出错,比题目给的大一点(1005),然后利用for循环去寻找要找的那个数,设立一个标志flag=0,当循环找到了该数,flag=1,输出该下标i+1,退出循环,循环结束后如果未找到该数,flag=0时,输出-1

#include<iostream>
using namespace std;
int main(void)
{
	int n, number, flag = 0;
	int a[1005];
	cout << "请输入要输入的个数(1-1000):";
	cin >> n;
	cout << "请输入" << n << "个数字(<10000):";
	for (int i = 0; i < n; i++)
	{
		cin >> a[i];
	}
	cout << "请输入要查找的数:";
	cin >> number;
	for (int i = 0; i < n; i++)
	{
		if (a[i] == number)
		{
			a[i] = number;
			cout << i + 1;
			flag = 1;
			break;
		}
	}
	if (flag == 0)
		cout << "-1" << endl;
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_41918107/article/details/85853939
今日推荐