用C语言编写如下程序:从键盘为一个5×5整型数组输入数据,找出每一列的最大值及其所在的行号。

用C语言编写如下程序:从键盘为一个5×5整型数组输入数据,找出每一列的最大值及其所在的行号。,第1张

#include <stdioh>

void main(){

int i,j,max,a[5][5],b[5];

for(i=0;i<5;i++)

for(j=0;j<5;j++)

scanf("%d",&a[i][j]);

for(j=0;j<5;j++)

{

max=a[0][j];

for(i=1;i<5;i++)

if(a[i][j]>max)

{

max=a[i][j];

b[j]=i;

}

}

for(i=0;i<5;i++)

printf("第%d列: %d\t行号: %d\n",i,a[b[i]][i],b[i]);

}

#include <stdioh>

void main()

{

int i,j,a[][3]={10,30,40,20,14,16,18,48,22,17},m,n,t;

for(i=0;i<4;i++)

for(j=0;j<3;j++)

{

if(a[i][j]>a[0][0])

{

m = i;

n = j;

t=a[i][j];

a[i][j]=a[0][0];

a[0][0]=t;

}

}printf("max = %d 行号=%d 列号=%d",a[0][0],m,n);

}

初始行列号,不确定,如上固定了列数为3,如有疑问请追问

#include<stdioh>

void main()

{

   int i,j,minv,mini,minj,sum=0;

   int a[4][4];

   printf("请输入矩阵中的16个数:\n");

   for(i=0;i<4;i++)

      for(j=0;j<4;j++)

          scanf("%d",&a[i][j]);

   minv=a[0][0];

   for(i=0;i<4;i++)

      for(j=0;j<4;j++)

         {

             if(a[i][j]<minv)

             {

                 minv=a[i][j];

                 mini=i+1;

                 minj=j+1;

             }

             if(i==j)

                 sum+=a[i][j];

         }

     printf("矩阵中最小值为%d,它在第%d行,%d列!\n",minv,mini,minj);

     printf("矩阵中对角线元素之和为%d",sum);

}

你需要动态的可以这样写:

#include<stdioh>

#include<stdlibh>

void main()

{

   int i,j,minv,mini=1,minj=1,sum=0,h,l;

   printf("请输入矩阵的大小:");

   scanf("%d%d",&h,&l);

   int a=(int )malloc(sizeof(int)h);

   for(i=0;i<l;i++)

   a[i] = (int )malloc(sizeof(int)l);

   printf("请输入矩阵中的%d个数:\n",hl);

   for(i=0;i<h;i++)

      for(j=0;j<l;j++)

          scanf("%d",&a[i][j]);

   minv=a[0][0];

   for(i=0;i<h;i++)

      for(j=0;j<l;j++)

         {

             if(a[i][j]<minv)

             {

                 minv=a[i][j];

                 mini=i+1;

                 minj=j+1;

             }

         }

     printf("矩阵中最小值为%d,它在第%d行,%d列!\n",minv,mini,minj);

   minv=a[0][0];

   for(i=0;i<h;i++)

      for(j=0;j<l;j++)

         {

             if(a[i][j]>minv)

             {

                 minv=a[i][j];

                 mini=i+1;

                 minj=j+1;

             }

         }

     printf("矩阵中最大值为%d,它在第%d行,%d列!\n",minv,mini,minj);

}

以上就是关于用C语言编写如下程序:从键盘为一个5×5整型数组输入数据,找出每一列的最大值及其所在的行号。全部的内容,包括:用C语言编写如下程序:从键盘为一个5×5整型数组输入数据,找出每一列的最大值及其所在的行号。、c语言 10个数组成二维数组,找出其中最大值,及行列和行号、【c语言编程】矩阵求最大值或最小值并返回它所在的行号与列号等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10084613.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存