关于#二维数组#的问题,如何解决?(语言-c语言)

编写程序,使用二维数组int a[3][4]存储键盘上随机输入的3行4列共12个整数,按行列顺序,将其中的正整数存储于另一个数组int b[12]中(从b[0])开始存储),输出b中存储的这些正整数及其平均值。

定义int fun(int n)函数,函数功能:将正整数n转换为各位数字逆序排列的正整数,函数返回该正整数。例如:n为2345,则返回5432,并编写main函数调用该函数。
救命,不会啊


#include <stdio.h>
int main()
{    
    int i,j,k=0;
    int sum=0;
    int a[3][4],b[12];
    for(i=0;i<3;i++)
        for(j=0;j<4;j++)   
        {      
            scanf("%d",&a[i][j]);
            if(a[i][j]>0) 
            {         
                sum+=a[i][j];
                b[k++]=a[i][j];
            }    
        }

    for(i=0;i<k;i++)
            printf("%d ",b[i]);    
    printf("\n平均值为%f\n",(float)sum/k);
    return 0;
} 

img


第二题

#include <stdio.h>
int fun(int n)
{
    int i = 0, tep, temp = n;
    n = 0;
    while (temp)
    {
        tep = temp % 10;
        n = n * 10 + tep;
        temp /= 10;
        i++;
    }

    return n;
}

int main()
{
    int n;
    scanf("%d", &n);
    n = fun(n);
    printf("%d", n);
    return 0;
}

img


有用请采纳 不懂可以问 谢谢