1、题目

编写一个函数,利用指针实现保存输入的9个数中所有的奇数并输出,若没有奇数则输出NO。

要求:

  • 1、不在子函数中输出。
  • 2、不能修改指定的子函数void GetOdd(int a[], int b, int m)

示例:

输入:1 4 7 2 5 8 3 6 9
输出:1 7 5 3 9

输入:2 2 2 2 2 2 2 2 2
输出:NO

2、完整代码

#include<stdio.h>
#define N 10

int a[N];
int res[N];

void GetOdd(int a[], int* b, int* m)
{
    *b = 0;
    for (int i = i = 0; i < 9; ++i)
    {
        if (a[i] % 2 == 1)
        {
            m[*b] = a[i];
            *b = *b + 1;
        }
    }
}
int main()
{
    int cnt;
    for (int i = 0; i < 9; ++i)
        scanf_s("%d", &a[i]);
    GetOdd(a, &cnt, res);
    if (cnt == 0)
        printf("NO");
    else
        for (int i = 0; i < cnt; ++i)
            printf("%d ", res[i]);
    return 0;
}

3、截图

在这里插入图片描述

在这里插入图片描述


土豆
17 声望5 粉丝