高手帮忙!!~! C语言的!!

2025-02-25 18:26:27
推荐回答(1个)
回答1:

1,你没明白宏定义的基本写法,你写为:#define N=3 这是错误的,N和3之间要有空格.建议看看教材上关于宏定义的章节.

2,在main函数中printf("/n"); ,斜杠反了,应为printf("\n");

3,在调用convert函数时,你的函数设计有问题,因为你在函数中使用了数组b,在convert函数里并没有对b进行定义,编译器找不到.改法如下:(在原来代码基础之上改的)
#include
#define N 3
void main()
{
void convert(int a[][3],int b[][3]);
int i,j;
int a[N][N],b[N][N];
printf("input array:\n");
for(i=0;i {
for(j=0;j {
scanf("%d",&a[i][j]);
}
}
printf("original array:\n");

for(i=0;i {
for(j=0;j {
printf("%5d",a[i][j]);
}
printf("\n");
}
convert(a,b);

printf("convert array:\n");

for(i=0;i {
for(j=0;j {
printf("%5d",b[i][j]);
}
printf("\n");
}

}

void convert(int a[][3],int b[][3])
{
int i,j;
for(i=0;i {
for(j=0;j {
b[j][i]=a[i][j];
}
}
}