九度 Online Judge 算法 刷题 题目1052:找x

题目1052:找x

题目描述:
输入一个数n,然后输入n个数值各不相同,再输入一个值x,输出这个值在这个数组中的下标(从0开始,若不在数组中则输出-1)。
输入:
测试数据有多组,输入n(1<=n<=200),接着输入n个数,然后输入x。
输出:
对于每组输入,请输出结果。
样例输入:
2
1 3
0
样例输出:
-1
来源:
2010年哈尔滨工业大学计算机研究生机试真题

code

c语言实现

#include<stdio.h>
int main() {
    int n,i,flag,x;
    int *p=NULL;
    while(scanf("%d",&n)==1) {
        if (n>200 || n<1) 
            continue;
        else {
            flag = 0;
            p = (int *)malloc(sizeof(int)*n);
            for (i=0;i<n;i++)
                scanf ("%d",p+i);
            scanf("%d",&x);
            for (i=0;i<n;i++) {
                if(p[i] == x) {
                    printf("%d\n",i);
                    flag = 1;
                }
            }
            if (flag == 0)
                printf("-1\n");
        }
    }
 
    return 0;
}
/**************************************************************     Problem: 1052     User: langzimaizan     Language: C     Result: Accepted     Time:0 ms     Memory:912 kb ****************************************************************/

你可能感兴趣的:(算法,面试,计算机,程序,笔试)