Überprüfen von dünnen Matrizen

CCBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Eine dünne Matrix ist eine Matrix, in der die Anzahl der 0 größer ist als die Anzahl der nicht-null Elemente. In diesem schrittweisen Lab werden wir lernen, wie man mithilfe von C programmieren überprüft, ob ein zweidimensionales Array eine dünne Matrix ist oder nicht.

Hinweis: Sie müssen die Datei ~/project/main.c selbst erstellen, um zu üben, zu programmieren und zu lernen, wie man sie mit gcc kompiliert und ausführt.

cd ~/project
## main.c erstellen
touch main.c
## main.c kompilieren
gcc main.c -o main
## main ausführen
./main

Erstellen eines zweidimensionalen Arrays

In diesem Schritt werden wir ein zweidimensionales Array erstellen, um unsere Matrixelemente zu speichern. Wir werden die Anzahl der Zeilen und Spalten vom Benutzer einlesen und dann den Benutzern mit einer geschachtelten for-Schleife die Matrixelemente nacheinander eingeben lassen.

#include <stdio.h>

int main()
{
   int matrix[10][10], row, column, i, j;
   printf("Geben Sie die Anzahl der Zeilen und Spalten der Matrix ein:\n");
   scanf("%d%d", &row, &column);

   printf("Geben Sie die Elemente der Matrix ein:\n");
   for (i = 0; i < row; i++)
   {
      for (j = 0; j < column; j++)
      {
         scanf("%d", &matrix[i][j]);
      }
   }

   // Überprüfen, ob die Matrix dünn ist oder nicht
    int counter = 0;
    for (i = 0; i < row; i++)
    {
        for (j = 0; j < column; j++)
        {
            if (matrix[i][j] == 0)
                counter++;
        }
    }

    if(counter > (row * column) / 2)
        printf("Die Matrix ist eine dünne Matrix\n");
    else
        printf("Die Matrix ist keine dünne Matrix\n");

   return 0;
}

Drucken der Matrix

Hier werden wir die Matrix mit der geschachtelten for-Schleife drucken, in der wir bereits die Benutzereingaben entgegengenommen haben.

#include <stdio.h>

int main()
{
   int matrix[10][10], row, column, i, j;
   printf("Geben Sie die Anzahl der Zeilen und Spalten der Matrix ein:\n");
   scanf("%d%d", &row, &column);

   printf("Geben Sie die Elemente der Matrix ein:\n");
   for (i = 0; i < row; i++)
   {
      for (j = 0; j < column; j++)
      {
         scanf("%d", &matrix[i][j]);
      }
   }

   // Drucken der Matrix
   printf("Die Matrix:\n");
   for (i = 0; i < row; i++)
   {
      for (j = 0; j < column; j++)
      {
         printf("%d ", matrix[i][j]);
      }
      printf("\n");
   }

   // Überprüfen, ob die Matrix dünn ist oder nicht
    int counter = 0;
    for (i = 0; i < row; i++)
    {
        for (j = 0; j < column; j++)
        {
            if (matrix[i][j] == 0)
                counter++;
        }
    }

    if(counter > (row * column) / 2)
        printf("Die Matrix ist eine dünne Matrix\n");
    else
        printf("Die Matrix ist keine dünne Matrix\n");

   return 0;
}

Vollständige das Programm

Hier werden wir die letzten Berührungen an unserem Programm vornehmen. Wir werden überprüfen, ob die von dem Benutzer bereitgestellte Matrix eine dünne Matrix ist oder nicht. Anschließend werden wir das Ergebnis drucken, ob es eine dünne Matrix ist oder nicht.

#include <stdio.h>

int main()
{
   int matrix[10][10], row, column, i, j;
   printf("Geben Sie die Anzahl der Zeilen und Spalten der Matrix ein:\n");
   scanf("%d%d", &row, &column);

   printf("Geben Sie die Elemente der Matrix ein:\n");
   for (i = 0; i < row; i++)
   {
      for (j = 0; j < column; j++)
      {
         scanf("%d", &matrix[i][j]);
      }
   }

   // Drucken der Matrix
   printf("Die Matrix:\n");
   for (i = 0; i < row; i++)
   {
      for (j = 0; j < column; j++)
      {
         printf("%d ", matrix[i][j]);
      }
      printf("\n");
   }

   // Überprüfen, ob die Matrix dünn ist oder nicht
    int counter = 0;
    for (i = 0; i < row; i++)
    {
        for (j = 0; j < column; j++)
        {
            if (matrix[i][j] == 0)
                counter++;
        }
    }

    if(counter > (row * column) / 2)
        printf("Die Matrix ist eine dünne Matrix\n");
    else
        printf("Die Matrix ist keine dünne Matrix\n");

   return 0;
}

Zusammenfassung

In diesem schrittweisen Lab haben wir gelernt, wie man überprüft, ob ein zweidimensionales Array dünn ist oder nicht. Wir haben das Konzept einer dünnen Matrix kennengelernt und erfahren, wie man in der C-Programmiersprache codiert, um zu bestimmen, ob eine Matrix dünn ist oder nicht. Wir haben ein zweidimensionales Array erstellt, Benutzereingaben entgegengenommen, die Matrix gedruckt und schließlich die Logik geschrieben, um zu überprüfen, ob die bereitgestellte Matrix dünn ist oder nicht.