【C语言习题】输入一个正整数n(1<n<=10),然后输入n个整数存入数组中,再输入一个整数x,在数组中查找x(定义函数search(list,n,x)为查找过程)

题目内容输入一个正整数n(1,然后输入n个整数存入数组中,再输入一个整数x,在数组中查找x。如果找到则输出相应的下标,否则输出"Not found"

【要求把查找过程定义为函数search(list,n,x),它的功能是在数组list中查找元素xn为有效元素个数。若找到则返回相应下标,否则返回-1

输入样例:  请输入元素个数:3

                    请输入3个元素:1 2 -6

                    请输入要查找的元素:2

输出样例:  查找元素对应下标为:1

个人解法如下:

#define _CRT_SECURE_NO_WARNINGS //防报错
#include
#define N 10

int Search(int list[], int n, int x)
{
    int i;
    for(i = 0; i < n; i++)
        if(list[i] == x)
            return i;
    return -1;
}

int main()
{
    int a[N], i, m, x, n;
    printf("请输入元素个数:");
    scanf("%d", &n);
    printf("请输入%d个元素:", n);
    for(i = 0; i < n; i++)
        scanf("%d", &a[i]);
    printf("请输入要查找的元素:");
    scanf("%d", &x);
    m = Search(a, n, x);
    if(m == -1)
        printf("查无此元素!");
    else
        printf("查找元素对应下标为:%d", m);
    return 0;
}

本人拙作,请大佬们点评。

你可能感兴趣的:(C语言习题,c语言)