C语言问题 二维数组输入

发布网友

我来回答

5个回答

热心网友

*****scanf("&d", &a[n][m]);此语句有误,应为scanf("%d",&a[n][m]);而错误语句致使输入的数据没有被存入数组中,所以读出的数与预订不服和

#include<stdio.h>

#define N 3

void main(){

int n,m;

int s;

int a[N][N];

printf("请输入方振:\n");

for(n=0;n<N;n++)

for(m=0;m<N;m++)

scanf("%d",&a[n][m]);


for(n=0;n<N;n++){

for(m=0;m<N;m++)

printf("%d ",a[n][m]);

printf("\n");

}

s=0;

for(n=0,m=0;n<N&&m<N;n++,m++)

s+=a[n][m];

printf("%d\n",s);

s=0;

for(n=0,m=N-1;n<N&&m>=0;n++,m--)

s+=a[n][m];

printf("%d",s);

}

输出结果:

热心网友

#include<stdio.h>

#define N 3

void main(){

int n,m;

int s;

int a[N][N];

for(n=0;n<N;n++){

for(m=0;m<N;m++){

scanf("%d",&a[n][m]);

}

}

for(n=0;n<N;n++){

for(m=0;m<N;m++){

printf("%d ",a[n][m]);

}

printf("\n");

}

}

没问题呀!!!不知道怎么回事,注释掉然后测试一下上面代码有错没得嘛

热心网友

scanf("%d", &a[n][m]);

热心网友

scanf("%d",&a[n][m]),是%d的,你写错了

热心网友

scanf("%d", &a[n][m]);而不是&d

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com