CHUNA044 2023-10-22 16:47 采纳率: 0%
浏览 2

c语言为什么过后按回车后面的for内容都没有执行?

按照下面的规律打印n * m的矩阵:

1 2 3 4 5

2 4 6 8 10

3 6 9 12 15

4 8 12 16 20

救命哇!
为什么输入过后按回车 后面的for内容都没有执行


#include <stdio.h>
#include <math.h>
int main()
{
    int n,m,a[n][m],i,j;
    scanf("%d %d",&n,&m);
for(j=1;j<=m;j++)
{
    for(i=1;i<=n;i++)
    {
        a[i][j]=(j+1)+(1+j)*i;
    }
}
for(i=1;i<=n;i++)
{
    for(j=1;j<=m;j++)
    {
        printf("%d ",a[i][j]);
    }
    printf("\n");
}
}
  • 写回答

4条回答 默认 最新

  • 柯本 2023-10-22 17:19
    关注

    这里就错了

     int n,m,a[n][m],i,j;
    
    

    你的m,n没有值,当然不对了
    一般的做法,是设一个最大值 ,如

    
    #define MAX 100
    ////...
     int n,m,a[MAX][MAX],i,j;
    
    评论

报告相同问题?

问题事件

  • 创建了问题 10月22日