第二周

发布时间 2023-04-02 23:53:24作者: 想进移动互联

体育考试

题目描述

同学们拿着序号牌站成一列等待老师点名考试,拥有相同号码的同学为一组共同进行考试。由于仓促,队伍并没有按序站好。现在想知道,老师接下来报到的序号在这个队列中第一次出现是第几个人。

输入格式

第一行包含一个整数 n。

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

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

输出格式

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

代码

#include <iostream>
using namespace std;
int main( )
{
int n,a;
int i=0;
int s[1001];
cin>>n;
for(i=1;i<=n;i++)
{
cin>>s[i];
}
cin>>a;
for(i=1;i<=n;i++)
{
if(a==s[i]&&s[i] !=i)
{
cout<<i<<endl;
break;
}

if(a !=s[i]&&i==n)
{
cout<<"-1";
}

}

return 0;

}

在做本题时,我把输出“-1”的if语句代码放在了for循环前面,但不符合条件数据也是需要逐个读取的,所以还是要放在循环里面。

 

上周我看了老师发的一个有关项目创意思维导图的视频。UP主应该是名程序员。令我感叹的不仅是UP的AI与AI交流的思想,更多的是因为他说的时候很投入。真的感受到了他的热爱。