C语言问题,求各位dd求解了

有大佬救救我这个菜鸟吗?
如何循环使二维数组每一行选一个数相加,输出每种结果。求救啊

选一个数相加什么意思

用递归
你题目的解答代码如下:

#include<stdio.h>
#include<math.h>
void pf(int r,int n,int m,int a[][m],int d)
{
    int i;
    if (r==n) {
        printf("%5d", d);
        return;
    }
    for(i=0;i<m;i++)
        pf(r+1,n,m,a,d+a[r][i]);
}
int main()
{
    int n=3,m=3;
    int a[3][3] = {
        1,2,3,
        3,4,5,
        4,1,8};
    pf(0,n,m,a,0);
    printf("\n共%.0f种\n", pow(m,n));
    return 0;
}

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

是每一行每一个数吗