输出二维数组某一行和列的元素的值。把我看看下面程序错哪了?

来源:百度知道 编辑:UC知道 时间:2024/05/27 15:59:49
#include<stdio.h>
main(){
int i,j,(*p)[3];
int a[2][3]={{1,2,3},{10,20,30}};
p=a;
scanf("%d,%d",&i,&j);
printf("a[%d][%d]= %d",i,j,*(*(p+i)+j));
}

scanf("%d,%d",&i,&j); 这句话错了啦,改成这样
scanf("%d%d",&i,&j);

*(*(p+i)+j)); i和j都减去1,因为数组下标要比实际说的几行几列小1,是从0开始存的。。*p指的是a[0][0];

何必费那么大劲

就是

printf("a[%d][%d]= %d",i,j,p[i][j]);

输入的时候要带逗号
如1,2