小白刷题笔记2023九月十二日

编程入门 行业动态 更新时间:2024-10-24 20:11:35

小白刷题<a href=https://www.elefans.com/category/jswz/34/1770047.html style=笔记2023九月十二日"/>

小白刷题笔记2023九月十二日

题目

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

第一行包含一个整数n。1≤n≤1 0 0 0。

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

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

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

一开始做这道题的时候,想到了是用数组和循环来解决

但是在写的过程中发现,在这道题的输出过程中,没有找到这个整数输出-1的情况一直没有解决

如果把一个if判断放在循环里会导致两种情况

1.可能在没有遍历完这个数组的时候就输出了-1,导致运行的结果出现问题

2.可能在找到这个整数的对应的序号之后依然输出-1;

最后的解决办法

创建一个变量,令这个变量=-1;这样在循环中进行条件判断时可以对这个变量进行赋值,如果没有找到这个整数,此时循环已经结束,将整个数组遍历,此时变量的值还为-1,再进行输出,就可以在遍历完整个数组,且没有找到对应的整数的时候,输出-1;

从而AC这道题

#include<iostream>
using namespace std;
int arr[1000];
int main()
{int n = 0;cin >> n;for (int i = 0; i < n; i++){cin >> arr[i];}int a = 0;cin >> a;int index = -1;for (int i = 0; i < n; i++){if (arr[i] == a){index = i + 1;break;}}cout << index << endl;
}

更多推荐

小白刷题笔记2023九月十二日

本文发布于:2024-02-12 15:00:12,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1688261.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:笔记   小白刷题

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!