编写函数fun, 函数的功能是: 将M行N列(均不大于10)的二维数组中的数据, 按列的顺序依次放到一维数组中

请编写函数fun, 函数的功能是: 将M行N列(均不大于10)的二维数组中的数据, 按列的顺序依次放到一维数组中。函数fun中给出的语句仅供参考。

要求fun函数的声明为:void fun(int s[][10], int b[], int *p, int m, int n) ;

例如, 输入:

3 4

33 33 33 33

44 44 44 44

55 55 55 55

则输出:

33 44 55 33 44 55 33 44 55 33 44 55

在main函数中调用上述函数,进行验证

#include <stdio.h>
void fun(int s[][10], int b[], int *p, int m, int n)
{
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
        {
            *b++ = s[j][i];
        }
    }
}
int main(int argc, char const *argv[])
{
    int a[3][10];
    int b[30];
    for (int i = 0; i < 3; i++)
    {
        for (int j = 0; j < 4; j++)
        {
            scanf("%d", &a[i][j]);
        }
    }
    fun(a, b, b, 3, 4);
    for (int i = 0; i < 3 * 4; i++)
    {
        printf("%d ",b[i]);
    }
};

img