首页 > 编程语言 > 详细

创建一个函数,将和有n个元素的数组中的key相等的所有元素的下标存储在另一数组中,并返回和key元素相同的元素的个数。

时间:2021-03-31 19:19:56      阅读:26      评论:0      收藏:0      [点我收藏+]

 

创建一个函数,将和有n个元素的数组中的key相等的所有元素的下标存储在另一个数组中,并返回和key元素相同的元素的个数。

1、数组元素的查找

#include <stdio.h>

#define NUMBER 10

int func1(const int x[], int y[], int z, int p)
{
    int i = 0;
    int j = 0;
    while (i < p)
    {
        if (x[i] == z)
        {
            y[j] = i;
            j++;
        }
        i++;
    }
    return j;
}

int main(void)
{
    int i, num, key,a[NUMBER], b[NUMBER];
    puts("please input the elements.");
    for (i = 0; i < NUMBER; i++)
    {
        printf("a[%d]: ", i); scanf("%d", &a[i]);
    }
    printf("the target element: "); scanf("%d", &key);
    
    num = func1(a, b, key, NUMBER);
    for (i = 0; i < num; i++)
    {
        printf("b[%d] = %d\n", i, b[i]);
    }
    printf("the number of target element: %d\n", num);
    return 0;
}

技术分享图片

#include <stdio.h>

#define NUMBER 7
int search(const int v[], int idx[], int key, int n)
{
    int i = 0, j = 0;
    while (i < n)
    {
        if (v[i] == key)
        {
            idx[j] = i;
            j++;
        }
        i++;
    }
    printf("{");
    for (i = 0; i < j; i++)
    {
        printf("%d ", idx[i]);
    }
    printf("}\n");
    printf("the number is %d\n", j);    
}

int main(void)
{
    int i, nu, a[NUMBER], b[NUMBER];
    puts("please input the elements.");
    for (i = 0; i < NUMBER; i++)
    {
        printf("a[%d] = ", i); scanf("%d", &a[i]);
    }
    printf("nu = "); scanf("%d", &nu);
    search(a, b, nu, NUMBER );
    return 0;
}

技术分享图片

 

创建一个函数,将和有n个元素的数组中的key相等的所有元素的下标存储在另一数组中,并返回和key元素相同的元素的个数。

原文:https://www.cnblogs.com/liujiaxin2018/p/14602629.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!