C语言程序:有一个3*4的矩阵,要求编写一个程序找出每一行中的最大值并与第一列交换

C语言程序 调试了再发, 没调试的错误太多了 !
2024-11-28 16:44:29
推荐回答(4个)
回答1:

到底是行数是3 还是列数是3?
我姑且认为是行数是3 然后把一行4个数字里找出最大的放在这亮逗一行的第一个
如果是这样子 写个循环函数就好了
假设矩阵数值保存在 QZ[3][4]中
int rows=3,cols=4;
int itemp=0;//假设矩阵里的值是整数
for(int i=0;i{//遍历每一悔键唤行
for(int j=cols-1;j>0;j--)
{//从最后一列开始 把大的数字移到前一列
if(QZ[rows][cols]>QZ[rows][cols-1])
{//如果后一列数字大于前一列数字 交换
itemp = QZ[rows][cols-1];
QZ[rows][cols-1] = QZ[rows][cols];
QZ[rows][cols]=itemp;
}
}
}
这样应该能解决你的问题吧 当然我没去试 没有纯碧凯C的环境 而且这个实在不算难

回答2:

其中将申矩阵里的数都给了二维数组a[3][4],可以真接赋初值,也可以由自己输入,我就直接赋行仿值了啊。
假设矩阵开始的矩阵为: 3 23 78 4 则运行后为: 78 23 3 4
1 7 34 16 34 7 1 16
18 34 56 90 90 34 56 18
这个程序在C上运行就可以了,其源程序为:

#include"stdio.h"
main()
{
int a[3][4]={3,23,78,4,1,7,34,16,18,34,56,90}; /*假设3*4矩阵里为这12个数*/
int i,j,s,m;
for(i=0;i<=2;i++)
{ m=a[0][j]
for(j=1;j<=2;j++)
if(m m=a[i][j];
a[i][j]=a[0][i];
a[i][0]=m;
}
for(i=0;i<=2;i++)
{for(j=0;j<=2;j++)
printf("%d",a[i][j]);
printf("\n")
}
getch();
}

其运行结族逗果是: 78 23 3 4
34 7 1 16
90 34 56 18
我没有运行了,在网吧里没有C环境,希望这样的结果能够满足你了,呵呵.

回答3:

是找出三行四列数组的每一列中的最大值并输出吧.
#include
main()
{
int a[3][4],i,j,max;
for(i=0;i<3;i++)
for(j=0;j<指历4;j++)
scanf("%d",&a[i][j]);   /*录入液前每行数据*/
for(i=0;i<3;i++)
{max=0;
for(j=0;j<4;j++)
if(max a[0][i]=max;
}  /*找最大值*/
for(i=0;i<3;i++)
printf("%8d",a[0][i]); /*输出每行中的最大值*/
getchar();
}

QQ联系唯埋搜:455242156

回答4:

这个A,B,帆悄C并不是定义在实数范围内冲凳的啊。
有可能有虚数散轿旅的(i^2=-1)
这道题主要是考公式么,不用想太多。