当前位置 博文首页 > 邱天的henry的博客:蓝桥杯:基础练习 查找整数(java实现)
输入格式
第一行包含一个整数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 {
/* 给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。 */
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
//定义boolean类型的数据flag来存放数据是否存在,为后面的判断做准备(不定义状态如果没有数据的话不好判断)
Boolean flag=false; //默认为false(没有查找的目标数据)
//定义数组并进行遍历然后存入控制台输入的数据
int []arr=new int[n];
for(int i=0;i<n;i++) {
arr[i]=sc.nextInt();
}
//获取目标对象
int target=sc.nextInt();
//遍历数组并进行判断
for(int i=0;i<n;i++) {
if(arr[i]==target) {
flag=true;
System.out.println(i+1); //注意数组的角标从0开始,所有加一
break; //跳出循环,防止后面在此查询此目标数据
}
}
//判断有没有目标
if(flag==false) {
System.out.println("-1");
}
}
}
ps:此题需注意定义一个boolean类型的数据来存放是否有目标数据的状态(题目要求没有目标数据时输出-1)
cs