为什么输出是空白的?

why the output is blank?

我必须为矩阵编写一个程序 multiplication.there 可能是一个更简单的算法,但我想知道这里的问题是什么以及我的算法是否有任何问题或...... 如果需要任何其他信息,请告诉 me.the 程序应该将两个矩阵与可变大小的列相乘,rows.I`我是初学者,所以我的错误可能非常明显。

#include <stdio.h>

int main()
{
    int m,n,l,a,b;
    scanf("%d %d %d",&m,&n,&l);
    int A[m][n],B[n][l],AB[m][l];
    for(int i=0;i<m;i++){
        for(int j=0;j<n;j++) scanf("%d",&A[i][j]);
    }
     for(int i=0;i<n;i++){
        for(int j=0;j<l;j++) scanf("%d",&B[i][j]);
    }
      for(int i=0;i<m;i++){
        for(int j=0;j<l;j++) AB[i][j]=0;
    }
    
     for(int i=0;i<m;i++){
        for(int j=0;j<l;j++){
            a=n;
            b=0;
            while(a!=0){
                AB[i][j]=AB[i][j]+A[i][b]*B[b][j];
                a=a--;
                b=b++;
            }
        }
    }
   for(int i=0;i<m;i++){
        for(int j=0;j<l;j++){
            printf("%d ",AB[i][j]);
        }
        printf("\n");
   }
}

所以我根据评论修改了它,我做对了吗?因为新问题是它不是running.I点击回车而是直接转到下一行而不是显示输出。

更改了 increment/decrement 指令并添加了输出语句:

#include <stdio.h>

int main()
{
    int m,n,l,a,b;
    printf("Enter m, n, l: ");
    scanf("%d %d %d",&m,&n,&l);
    int A[m][n],B[n][l],AB[m][l];
    for(int i=0;i<m;i++){
        for(int j=0;j<n;j++) {
            printf("Enter A[%d][%d]: ", i, j);
            scanf("%d",&A[i][j]);
        }
    }
    for(int i=0;i<n;i++){
        for(int j=0;j<l;j++) {
            printf("Enter B[%d][%d]: ", i, j);
            scanf("%d",&B[i][j]);
        }
    }
    for(int i=0;i<m;i++){
        for(int j=0;j<l;j++) AB[i][j]=0;
    }
    
    for(int i=0;i<m;i++){
        for(int j=0;j<l;j++){
            a=n;
            b=0;
            while(a!=0){
                AB[i][j]=AB[i][j]+A[i][b]*B[b][j];
                a=a-1;
                b=b+1;
            }
        }
    }
    for(int i=0;i<m;i++){
            for(int j=0;j<l;j++){
                printf("%d ",AB[i][j]);
            }
            printf("\n");
    }
}
$ gcc -Wall matrix.c
$ ./a.out           
Enter m, n, l: 2 2 2
Enter A[0][0]: 1
Enter A[0][1]: 1
Enter A[1][0]: 1
Enter A[1][1]: 1
Enter B[0][0]: 2
Enter B[0][1]: 2
Enter B[1][0]: 2
Enter B[1][1]: 2
4 4 
4 4 
$

输出对我来说并不空白。 :-)