/*?編寫一個函數(shù)(參數(shù)用指針)將一個3×3矩陣轉(zhuǎn)置*/
#include?<stdio.h>
void?f(char?(*p)[3]);
int?main()
{
char?a[3][3];
int?i,j;
char?(*p)[3]=a;
printf("請輸入9個字符\n");
for(i=0;i<3;i++)
for(i=0;j<3;j++)
scanf("%c",a[i][j]);
f(a);
for(i=0;i<3;i++)
for(i=0;j<3;j++)
printf("%c",a[i][j]);
return?0;
}
void?f(char?(*p)[3])
{
char?t;
int?i,j;
for(i=0;i<3;i++)
for(i=0;j<=i;j++)
{
t=*(*(p+i)+j);
*(*(p+i)+j)=*(*(p+j)+i);
*(*(p+j)+i)=t;
}
}
//運行不了,請問哪里錯了
2 回答
已采納

望遠(yuǎn)
TA貢獻1017條經(jīng)驗 獲得超1032個贊
#include?<stdio.h> void?f(char?(*p)[3]); ? int?main() { ????char?a[3][3]; ????int?i,j; ????printf("請輸入9個字符\n"); ????for(i=0;i<3;i++) ????????for(j=0;j<3;j++)//這里是j=0 ????????????scanf("%c",&a[i][j]); ? ????f(a); ? ????for(i=0;i<3;i++) { ????????for(j=0;j<3;j++)//這里是j=0 ????????????printf("?%c?",a[i][j]); printf("\n"); } ????????return?0; } ? void?f(char?(*p)[3]) { ????char?t; ????int?i,j; ? ????for(i=0;i<3;i++) ????????for(j=0;j<=i;j++)//這里是j=0 ????????{ ????????????t=*(*(p+i)+j); ????????????*(*(p+i)+j)=*(*(p+j)+i); ????????????*(*(p+j)+i)=t; ????????} }
ps:LZ能不能明天采納?
- 2 回答
- 1 關(guān)注
- 1386 瀏覽
添加回答
舉報
0/150
提交
取消