Heim  >  Artikel  >  Backend-Entwicklung  >  C-Programm zum Austauschen diagonaler Elemente einer bestimmten Matrix

C-Programm zum Austauschen diagonaler Elemente einer bestimmten Matrix

王林
王林nach vorne
2023-08-25 18:02:031478Durchsuche

C-Programm zum Austauschen diagonaler Elemente einer bestimmten Matrix

Problem

Wir müssen Code schreiben, um die Hauptdiagonalelemente mit den Unterdiagonalelementen auszutauschen. Die Größe der Matrix wird zur Laufzeit angegeben.

Wenn die Größen der m- und n-Werte der Matrix nicht gleich sind, drucken Sie die angegebene Matrix als nicht quadratisch aus.

Nur die Hauptdiagonalelemente der quadratischen Matrix können ausgetauscht werden, und sie können auch mit den Unterdiagonalelementen ausgetauscht werden.

Lösung

Die Lösung zum Schreiben eines C-Programms zum Austauschen der Diagonalelemente in einer bestimmten Matrix lautet wie folgt: Die Logik des Austauschs der Diagonalelemente wird unten erläutert C-Programm zum

Austauschen diagonaler Elemente

in einer gegebenen Matrix – Live-Demonstration

for (i=0;i<m;++i){
   a = ma[i][i];
   ma[i][i] = ma[i][m-i-1];
   ma[i][m-i-1] = a;
}

Ausgabe

Wenn das obige Programm ausgeführt wird, erzeugt es die folgenden Ergebnisse –

#include<stdio.h>
main (){
   int i,j,m,n,a;
   static int ma[10][10];
   printf ("Enter the order of the matrix m and n</p><p>");
   scanf ("%dx%d",&m,&n);
   if (m==n){
      printf ("Enter the co-efficients of the matrix</p><p>");
      for (i=0;i<m;++i){
         for (j=0;j<n;++j){
            scanf ("%d",&ma[i][j]);
         }
      }
      printf ("The given matrix is </p><p>");
      for (i=0;i<m;++i){
         for (j=0;j<n;++j){
            printf (" %d",ma[i][j]);
         }
         printf ("</p><p>");
      }
      for (i=0;i<m;++i){
         a = ma[i][i];
         ma[i][i] = ma[i][m-i-1];
         ma[i][m-i-1] = a;
      }
      printf ("Matrix after changing the </p><p>");
      printf ("Main & secondary diagonal</p><p>");
      for (i=0;i<m;++i){
         for (j=0;j<n;++j){
            printf (" %d",ma[i][j]);
         }
         printf ("</p><p>");
      }
   }
   else
      printf ("The given order is not square matrix</p><p>");
}

Das obige ist der detaillierte Inhalt vonC-Programm zum Austauschen diagonaler Elemente einer bestimmten Matrix. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen