CodeUP 1934

Qusetion:

题目描述:
输入一个数n,然后输入n个数值各不相同,再输入一个值x,输出这个值在这个数组中的下标(从0开始,若不在数组中则输出-1)。

输入:
测试数据有多组,输入n(1<=n<=200),接着输入n个数,然后输入x。

输出:
对于每组输入,请输出结果。

样例输入: 

1 2 3 4 
3

样例输出:
2


思路:

1.利用input函数分别存储n值和由n产生的数组以及x的值

2.通过遍历对比的方式,确定要搜索的x值的位置

3.利用mark标记在list中是否存在于x匹配的值,如不存在则输出-1


Code[Python]

n=int(input())
listword=[]
for i in range(n) :
    listword.append(int(input()))
x=int(input())
mark=False
count=-1
for j in listword:
    count=count+1
    if x==j:
        mark=True
        print(count)
        break
if mark==False:
    print(-1)

Code[C++]

#include<cstdio>
const int maxn=210;
int a[maxn];
int main(){
	int n,x;
	while (scanf("%d",&n)!=EOF){
		for (int i=0;i<n;i++){
			scanf("%d",&a[i]);
		}
		scanf("%d",&x);
		int k;
		for (k=0;k<n;k++){
			if(a[k]==x){
				printf("%d\n",k);
				break;
			}
		}
		if (k==n){
			printf("-1\n");
		}
	}
	return 0;
} 

反思:

在python代码中,并没有将n的定义域考虑进去

猜你喜欢

转载自blog.csdn.net/AliceLeeHX/article/details/82828535