满意答案
LT滴fAns
2013.06.06
采纳率:49% 等级:9
已帮助:265人
你好,很高兴为你解答问题。
#include
void main()
{
double a[3][3]={1,2,3,4,5,6,7,8,9};//为方便直接赋值了
int m, n;//m,n分别记录最大值的行列
double t=a[0][0];//t记录最大值
double (*p)[3] = a;
//下面for实现行列交换
for(int i=0;i<3;i++)
{
for(int j=0;j
{
double tmp;
tmp = *(*(p+i)+j);
*(*(p+i)+j) = *(*(p+j)+i);
*(*(p+j)+i) = tmp;
}
}
//打印新的数组并选出最大值以及位置
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
printf("%f\t",a[i][j]);
if(a[i][j]>=t)
{
t = a[i][j];
m = i;
n = j;
}
}
printf("\n");
}
printf("最大值为a[%d][%d]:%f\n",m,n,a[m][n]);
}
纯手工设计调试,满意还望采纳鼓励下。若有疑问欢迎追问。
00分享举报