Zamiana Kolumn miejscami

0

Witam, mam napisać program który w tablicy znajdzie element najmniejszy i największy oraz zamieni kolumnę, w której znajduje się element największy tablicy, z kolumną, w której znajduje się element najmniejszy tablicy. Program jest gotowy, nie wiem tylko jak zapisać kolumnę w której znajdują się elementy największy i najmniejszy(k_max,k_min). Proszę o pomoc, poniżej podaję kod:

#include<stdio.h>
#include<math.h>
#include<time.h>
int main ()
{
int tab[4][6]={0,1,1,1,1,1,-1,0,1,1,1,1,-1,-1,0,1,3,1,-1,-2,-1,0,1,1};
int max,min,p1_max,p2_max,p1_min,p2_min,k_max,k_min;
int tmp;
int i,j,n=4,m=6;
max=tab[0][0];p1_max=0;
p2_max=0;
min=tab[0][0];
p1_min=0;
p2_min=0; 
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
if(max<tab[i][j])
{
max=tab[i][j];
p1_max=i;
p2_max=j;}
}
}
printf("Max wynosi %d i znajduje sie [%d][%d].\n",max ,p1_max,p2_max);
for (i=0;i<n;i++){
for (j=0;j<m;j++)
{
if(min>tab[i][j])
{
min=tab[i][j];
p1_min=i;
p2_min=j;
}
}
}
printf("Min wynosi %d i znajduje sie [%d][%d].\n",min ,p1_min,p2_min);
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
**k_max=tab[i][p2_max];???????????
k_min=tab[i][p2_min];????????????**
tmp=tab[i][k_max];
tab[i][k_max]=tab[i][k_min];
tab[i][k_min]=tmp;
}
}
for (i=0;i<n;i++)
for (j=0;j<m;j++)
printf("%d ",tab[i][j]);
}
0
#include <stdio.h>

#define Y 4
#define X 6

int main()
  {
   int tmp,tab[4][6]={{0,1,1,1,1,1},{-1,0,1,1,1,1},{-1,-1,0,1,3,1},{-1,-2,-1,0,1,1}};
   size_t Hy=0,Hx=0,Ly=0,Lx=0,y,x;
   for(y=0;y<Y;++y,printf("\n")) for(x=0;x<X;++x) printf("%3d",tab[y][x]);
   for(y=0;y<Y;++y)
     {
      for(x=0;x<X;++x)
        {
         if(tab[Hy][Hx]<tab[y][x]) { Hy=y; Hx=x; }
         else if(tab[Ly][Lx]>tab[y][x]) { Ly=y; Lx=x; }
        }
     }
   printf("Max wynosi %2d i znajduje sie [%u][%u].\n",tab[Hy][Hx],Hy,Hx);
   printf("Min wynosi %2d i znajduje sie [%d][%d].\n",tab[Ly][Lx],Ly,Lx);
   for(y=0;y<Y;++y)
     {
      tmp=tab[y][Hx];
      tab[y][Hx]=tab[y][Lx];
      tab[y][Lx]=tmp;
     }
   for(y=0;y<Y;++y,printf("\n")) for(x=0;x<X;++x) printf("%3d",tab[y][x]);
   return 0;
  }
0

Super, dzięki bardzo :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1