哇里233 2021-12-02 13:53 采纳率: 100%
浏览 23
已结题

输出值为什么随输出语句格式改变了

img

这里是题目,不过和我的问题关系不大

#include <stdio.h>
int main()
{
    int A[20][20];
    int n,sum,i,j;
    scanf("%d",&n);
    for(i=0;i<=n;i++)
    {
        for(j=0;j<=n;j++);
        {
            scanf("%d",&A[i][j]);
        }    
        getchar();
     } 
    printf("%d",A[0][0]);
    return 0;
}


img

这时候输出的是这个很怪的数


#include <stdio.h>
int main()
{
    int A[20][20];
    int n,sum,i,j;
    scanf("%d",&n);
    for(i=0;i<=n;i++)
    {
        for(j=0;j<=n;j++);
        {
            scanf("%d",&A[i][j]);
        }    
        getchar();
     } 
    for(i=0;i<=n;i++)
    {
        for(j=0;j<=n;j++);
        {
            printf("%d ",A[i][j]);
        }
     } 
    
    return 0;
}

改成循环输出之后就是这个了

img

并且为什么赋值和输出的时候都只有三个数字,我想让他输入四个数字怎么办

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-12-02 13:54
    关注
        for(j=0;j<=n;j++);
    

    第9行for后面多了分号
    后面代码第10、18行一样
    另外输入n,表示数组实际大小,for循环应该是 for(i=0;i<n;i++),不应该等于n,这样等于是n+1个元素了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月10日
  • 已采纳回答 12月2日
  • 创建了问题 12月2日