蓝桥杯:基础练习 查找整数

£可爱£侵袭症+ 提交于 2019-12-02 15:29:31

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

输入格式
第一行包含一个整数n。

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

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

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

样例输入
6
1 9 4 8 3 9
9

样例输出
2

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

解法:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        // 输入整数个数
        int m = sc.nextInt();

        // 初始化数组
        int arr[] = new int[m];
        
        //输入全部整数值
        for (int i = 0; i < arr.length; i++) {
            arr[i] = sc.nextInt();
        }

        // 输出要查找的整数值
        int search = sc.nextInt();

        // 定义一个标志 用于判断是否查询到
        boolean flag = false;

        for (int i = 0; i < arr.length; i++) {
            // 查询到输出位置
            if (arr[i] == search) {
                flag = true;
                System.out.println(i + 1);
                return;
            }
        }

        // 没查询到 返回-1
        if (!flag) {
            System.out.println(-1);
        }
    }
}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!