在C中数组相同的元素

特曼

c查找相同元素的数组名为rLookupAr()的函数接受三个参数,数组,大小和目标,并返回数组中数字最后一次出现的下标。参数大小指示数组的大小。例如,如果array为{2,1,3,2,4}且target为3,则它将返回2。对于同一数组,如果target为2,则将返回3如果数组中没有所需的数字,则该函数将返回–1。下面给出了函数原型。

int rLookupAr(int array[], int size, int target);

编写一个C程序来测试该功能。

下面给出了一个示例输入和输出会话:

输入数组大小:5输入5个数字:2 1 3 2 4输入目标数字:2 rLookupAr()= 3

输入数组大小:5输入5个数字:2 1 3 2 4输入目标数字:5 rLookupAr()= -1

这是我的代码

#include <stdio.h> 
int rLookupAr(int array[], int size, int target);

int main() {
    int numArray[80];
    int target, i, size;

    printf("Enter array size: ");
    scanf("%d", &size);

    printf("Enter %d numbers: ", size);
    for (i = 0; i < size; i++)
        scanf("%d", &numArray[i]);

    printf("Enter the target number: ");
    scanf("%d", &target);

    printf("rLoopupAr(): %d", rLookupAr(numArray, size, target));

    return 0;
} 

int rLookupAr(int array[], int size, int target) {
    int j,i;

    for (j = 0; j < size; j++)
    if(array[i] == target)
       return j;

    return -1;
}

当相同的数组元素编号与粗体字相同时,我不知道如何实现

唱片

您可以将其编码为以相反的方式遍历数组

int rLookupAr(int array[], int size, int target) {
    int j;

    for (j = size-1; j >= 0; j--)
        if (array[j] == target)
            return j;

    return -1;
}

或遍历整个循环并将值存储在查找变量中

int rLookupAr(int array[], int size, int target) {
    int j;
    char found = -1;

    for (j = 0; j < size; j++)
        if (array[j] == target)
            found = j;

    return found;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章