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

C-Programm zum Austauschen diagonaler Elemente einer bestimmten Matrix

王林
Freigeben: 2023-08-25 18:02:03
nach vorne
1535 Leute haben es durchsucht

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;
}
Nach dem Login kopieren

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>");
}
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage