C 语言程序将数组的奇偶元素放入两个单独的数组中


2022 年 5 月 3 日, Learn eTutorial
2580

如何分离数组中的奇数和偶数?

我们需要将数组中的元素分为奇数偶数,并将这些元素存储在两个独立的数组中。因此,我们必须检查主数组中的每个元素或数字,并根据它是奇数还是偶数将其移动到各自的数组中。

在此程序中,我们需要创建 3 个数组:1. 用于接收用户输入 2. 用于奇数 3. 用于偶数

  • 使用循环遍历用户输入数组,将每个元素除以数字 2,并检查余数
  • 如果余数为 1,则添加到 奇数数组
  • 如果余数为 0,则添加到偶数数组

如何在 C 语言中实现奇偶数组逻辑?

要实现这个 C 语言程序,我们需要声明三个数组,分别是 input_arr[ ] 用于存储用户输入的数字,odd_arr[ ] 用于存储 input_arr[ ] 中的奇数,even_arr[ ] 用于存储 input_arr[ ] 中的偶数。

首先,我们需要从用户那里读取数组的限制并将数字读取到 input_arr[ ] 中。然后使用 for 循环 检查 input_arr[i] % 2 == 0,如果为真,则将数字添加到 even_arr[ ] 中,否则添加到 odd_arr[ ] 中。检查所有元素后。

算法

步骤 1: 包含头文件以使用内置函数。

步骤 2: 声明数组 input_arr[ ]odd_arr[ ]even_arr[ ]

步骤 3: 声明整数变量 n, j, i, k

步骤 4: 将数组大小接受到 n 中。

步骤 5: 使用 for 循环 将元素读取到 input_arr[ ] 中。

步骤 6: 使用 for 循环,条件为 i < n,执行步骤 7。

步骤 7: 检查数字 input_arr[i]%2 == 0,如果为真,则数字为偶数,将数字复制到 even_arr[j] 中,同时将 j 增加 1,否则执行步骤 8。

步骤 8: 数字为奇数,将数字复制到 odd_arr[k] 中,然后将 k 增加 1

步骤 9: 使用 for 循环even_arr[ ] 的元素显示为偶数。

步骤 10: 使用 for 循环odd_arr[ ] 的元素显示为奇数。


为了使用 C 语言程序分离数组元素,我们正在使用以下主题,请参考这些主题以更好地理解

C 语言源代码

                                           #include <stdio.h>
    void main()
    {
 
        long int input_arr[10], odd_arr[10],even_arr[10];
        int i, j = 0, k = 0, n;
 
        printf("Enter the size of the array\n");
        scanf("%d", &n);
 
        printf("Enter the elements of the array \n");
        for (i = 0; i < n; i++)
        {
            scanf("%ld", & input_arr[i]);
            fflush(stdin);
        }
 
        /*  Copy odd and even elements into their respective arrays */
 
        for (i = 0; i < n; i++)
        {
            if (input_arr[i] % 2 == 0)
            {
                even_arr[j] = input_arr[i];
                j++;
            }
            else
            {
                odd_arr[k] = input_arr[i];
                k++;
            }
        }
 
        printf("The elements of the Odd array are \n");
        for (i = 0; i < k; i++)
        {
            printf("%ld\n", odd_arr[i]);
        }
 
        printf("The elements of the Even array are \n");
        for (i = 0; i < j; i++)
        {
            printf("%ld\n", even_arr[i]);
        }
    }


                                      

输出

Enter the size of the array
5
Enter the elements of the array 
4
5
1
2
7
The elements of the Odd array are 
5
1
7
The elements of the Even array are 
4
2