解题思路:
用一个int指针处理二维数组问题
注意事项:
偏移搞好就行了
参考代码:
#include<stdio.h>
void jiaohuan(int *p,const int x,const int y);
int main()
{
/*int a[3][3]={
{1,2,3},
{
4,5,6
} ,
{
7,8,9
}
};*/
int a[3][3];
int j;
int tt;
for(j=0;j<3;j++)
{
for(tt=0;tt<3;tt++)
{
scanf("%d",&a[j][tt]);
}
}
int *p;
p=&a[0][0];
int i;
jiaohuan(p,3,3);
for(i=0;i<9;i++)
{
printf("%d ",*(p+i));
if((i+1)%3==0)
{
printf("\n");
}
}
return 0;
}
void jiaohuan(int *p,const int x,const int y)
{
int i,j;
int temp;
for(i=0;i<x;i++)
{
for(j=i;j<y;j++)
{
temp=*(p+j*x+i);
*(p+j*x+i)=*(p+i*x+j);
*(p+i*x+j)=temp;
}
}
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:599 |
C语言程序设计教程(第三版)课后习题8.9 (C++代码)浏览:846 |
C语言训练-求素数问题 (C语言代码)浏览:955 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:533 |
兰顿蚂蚁 (C++代码)浏览:1091 |
wu-淘淘的名单 (C++代码)浏览:1337 |
三角形 (C++代码)递推浏览:755 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:603 |
1908题解浏览:638 |
1118(求助_已解决)浏览:329 |