Mittelwert eines Datensatzes in C berechnen

CCBeginner
Jetzt üben

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

Einführung

In diesem Lab lernen Sie, wie man den Mittelwert einer Datensammlung in der C-Programmierung berechnet. Das Lab umfasst die folgenden Schritte:

  1. Einlesen eines Zahlenarrays über die Benutzereingabe.
  2. Berechnen der Summe der Zahlen und anschließend des Mittelwerts, indem die Summe durch die Anzahl der Zahlen dividiert wird.
  3. Ausgeben des berechneten Mittelwerts.

Das Lab bietet eine schrittweise Anleitung, einschließlich Beispielcodes, um Ihnen den Prozess der Mittelwertberechnung in C zu verdeutlichen. Am Ende dieses Labs verfügen Sie über die Fähigkeiten, numerische Daten mithilfe der C-Programmierung zu analysieren und zusammenzufassen.

Einlesen eines Zahlenarrays

In diesem Schritt lernen Sie, wie Sie ein Zahlenarray in der C-Programmierung einlesen. Wir erstellen ein einfaches Programm, das es Benutzern ermöglicht, eine Reihe von Zahlen einzugeben und diese in einem Array zu speichern.

Erstellen Sie zunächst eine neue C-Datei im Verzeichnis ~/project:

cd ~/project
nano mean_calculation.c

Geben Sie nun folgenden Code ein:

#include <stdio.h>

#define MAX_SIZE 100

int main() {
    int numbers[MAX_SIZE];
    int count;

    // Benutzer nach der Anzahl der Elemente fragen
    printf("Geben Sie die Anzahl der Elemente ein (max %d): ", MAX_SIZE);
    scanf("%d", &count);

    // Eingabevalidierung
    if (count <= 0 || count > MAX_SIZE) {
        printf("Ungültige Anzahl der Elemente!\n");
        return 1;
    }

    // Zahlen in das Array einlesen
    printf("Geben Sie %d Zahlen ein:\n", count);
    for (int i = 0; i < count; i++) {
        printf("Geben Sie Zahl %d ein: ", i + 1);
        scanf("%d", &numbers[i]);
    }

    // Eingelesene Zahlen ausgeben
    printf("\nEingelesene Zahlen sind:\n");
    for (int i = 0; i < count; i++) {
        printf("%d ", numbers[i]);
    }
    printf("\n");

    return 0;
}

Kompilieren Sie das Programm:

gcc mean_calculation.c -o mean_calculation

Führen Sie das Programm aus:

./mean_calculation

Beispielausgabe:

Geben Sie die Anzahl der Elemente ein (max 100): 5
Geben Sie 5 Zahlen ein:
Geben Sie Zahl 1 ein: 10
Geben Sie Zahl 2 ein: 20
Geben Sie Zahl 3 ein: 30
Geben Sie Zahl 4 ein: 40
Geben Sie Zahl 5 ein: 50

Eingelesene Zahlen sind:
10 20 30 40 50

Lassen Sie uns die wichtigsten Teile des Codes aufschlüsseln:

  • #define MAX_SIZE 100 legt eine maximale Größe für das Array fest
  • scanf() wird verwendet, um die Anzahl der Elemente und einzelne Zahlen einzulesen
  • Wir validieren die Eingabe, um sicherzustellen, dass sie im zulässigen Bereich liegt
  • Eine for-Schleife wird verwendet, um die Zahlen einzugeben und anschließend anzuzeigen

Dieses Programm zeigt, wie man:

  1. Ein Array mit einer maximalen Größe deklariert
  2. Die Anzahl der Elemente vom Benutzer erhält
  3. Zahlen in das Array eingibt
  4. Benutzereingaben validiert
  5. Die eingegebenen Zahlen anzeigt

Summe berechnen und anschließend Mittelwert = Summe/Anzahl

In diesem Schritt erweitern wir das vorherige Programm, um die Summe und den Mittelwert der vom Benutzer eingegebenen Zahlen zu berechnen.

Öffnen Sie die vorhandene Datei:

cd ~/project
nano mean_calculation.c

Ändern Sie den Code, um die Berechnung von Summe und Mittelwert einzubeziehen:

#include <stdio.h>

#define MAX_SIZE 100

int main() {
    int numbers[MAX_SIZE];
    int count;
    int sum = 0;
    float mean;

    // Benutzer nach der Anzahl der Elemente fragen
    printf("Geben Sie die Anzahl der Elemente ein (max %d): ", MAX_SIZE);
    scanf("%d", &count);

    // Eingabevalidierung
    if (count <= 0 || count > MAX_SIZE) {
        printf("Ungültige Anzahl der Elemente!\n");
        return 1;
    }

    // Zahlen in das Array einlesen und Summe berechnen
    printf("Geben Sie %d Zahlen ein:\n", count);
    for (int i = 0; i < count; i++) {
        printf("Geben Sie Zahl %d ein: ", i + 1);
        scanf("%d", &numbers[i]);
        sum += numbers[i];
    }

    // Mittelwert berechnen
    mean = (float)sum / count;

    // Ergebnisse ausgeben
    printf("\nEingelesene Zahlen sind:\n");
    for (int i = 0; i < count; i++) {
        printf("%d ", numbers[i]);
    }
    printf("\n");

    printf("Summe der Zahlen: %d\n", sum);
    printf("Mittelwert der Zahlen: %.2f\n", mean);

    return 0;
}

Kompilieren Sie das Programm:

gcc mean_calculation.c -o mean_calculation

Führen Sie das Programm aus:

./mean_calculation

Beispielausgabe:

Geben Sie die Anzahl der Elemente ein (max 100): 5
Geben Sie 5 Zahlen ein:
Geben Sie Zahl 1 ein: 10
Geben Sie Zahl 2 ein: 20
Geben Sie Zahl 3 ein: 30
Geben Sie Zahl 4 ein: 40
Geben Sie Zahl 5 ein: 50

Eingelesene Zahlen sind:
10 20 30 40 50
Summe der Zahlen: 150
Mittelwert der Zahlen: 30.00

Wichtige Änderungen in dieser Version:

  • Hinzufügen der Variablen sum zur Verfolgung der Gesamtsumme aller Zahlen
  • Integration der Summenberechnung in die Eingabe-Schleife
  • Berechnung des Mittelwerts durch Division der Summe durch die Anzahl
  • Verwendung der Typumwandlung (float), um eine Gleitkommadivision sicherzustellen
  • Hinzufügen der Ausgabe für Summe und Mittelwert mit formatierter Ausgabe

Das Programm zeigt nun:

  1. Die Berechnung der Summe der Arrayelemente
  2. Die Berechnung des arithmetischen Mittelwerts
  3. Die Anzeige der Ergebnisse mit Genauigkeit

Ausgabe des Mittelwerts

In diesem letzten Schritt überarbeiten wir den Code, um eine Funktion zur Berechnung und Ausgabe des Mittelwerts zu erstellen. Dadurch wird unser Programm modularer und lesbarer.

Öffnen Sie die vorhandene Datei:

cd ~/project
nano mean_calculation.c

Aktualisieren Sie den Code mit einer dedizierten Funktion zur Mittelwert-Berechnung:

#include <stdio.h>

#define MAX_SIZE 100

// Funktion zur Berechnung und Ausgabe des Mittelwerts
void calculateMean(int numbers[], int count) {
    if (count <= 0) {
        printf("Fehler: Keine Zahlen zum Berechnen des Mittelwerts.\n");
        return;
    }

    int sum = 0;
    float mean;

    // Summe berechnen
    for (int i = 0; i < count; i++) {
        sum += numbers[i];
    }

    // Mittelwert berechnen
    mean = (float)sum / count;

    // Detaillierte Statistiken ausgeben
    printf("\nStatistiken:\n");
    printf("Anzahl der Elemente: %d\n", count);
    printf("Summe der Zahlen: %d\n", sum);
    printf("Mittelwert der Zahlen: %.2f\n", mean);
}

int main() {
    int numbers[MAX_SIZE];
    int count;

    // Benutzer nach der Anzahl der Elemente fragen
    printf("Geben Sie die Anzahl der Elemente ein (max %d): ", MAX_SIZE);
    scanf("%d", &count);

    // Eingabevalidierung
    if (count <= 0 || count > MAX_SIZE) {
        printf("Ungültige Anzahl der Elemente!\n");
        return 1;
    }

    // Zahlen in das Array einlesen
    printf("Geben Sie %d Zahlen ein:\n", count);
    for (int i = 0; i < count; i++) {
        printf("Geben Sie Zahl %d ein: ", i + 1);
        scanf("%d", &numbers[i]);
    }

    // Eingelesene Zahlen ausgeben
    printf("\nEingelesene Zahlen sind:\n");
    for (int i = 0; i < count; i++) {
        printf("%d ", numbers[i]);
    }
    printf("\n");

    // Mittelwert berechnen und ausgeben
    calculateMean(numbers, count);

    return 0;
}

Kompilieren Sie das Programm:

gcc mean_calculation.c -o mean_calculation

Führen Sie das Programm aus:

./mean_calculation

Beispielausgabe:

Geben Sie die Anzahl der Elemente ein (max 100): 4
Geben Sie 4 Zahlen ein:
Geben Sie Zahl 1 ein: 10
Geben Sie Zahl 2 ein: 20
Geben Sie Zahl 3 ein: 30
Geben Sie Zahl 4 ein: 40

Eingelesene Zahlen sind:
10 20 30 40
Statistiken:
Anzahl der Elemente: 4
Summe der Zahlen: 100
Mittelwert der Zahlen: 25.00

Wichtige Verbesserungen in dieser Version:

  • Erstellung einer separaten Funktion calculateMean()
  • Detailliertere statistische Ausgabe
  • Verbesserte Fehlerbehandlung für Randfälle
  • Beibehaltung der gleichen Kernfunktionalität wie in den vorherigen Schritten
  • Modularer und lesbarer Code

Das Programm demonstriert:

  1. Einen funktionsbasierten Ansatz für Berechnungen
  2. Eine umfassende statistische Ausgabe
  3. Modulares Code-Design

Zusammenfassung

In diesem Labor lernen Sie, wie Sie in C ein Zahlenarray einlesen, die Summe und den Mittelwert des Datensatzes berechnen und anschließend den Mittelwert ausgeben. Zuerst fordern Sie den Benutzer auf, eine Reihe von Zahlen einzugeben und diese in einem Array zu speichern. Anschließend berechnen Sie die Summe der Zahlen und dividieren sie durch die Anzahl, um den Mittelwert zu ermitteln. Schließlich geben Sie den berechneten Mittelwert aus.

Die wichtigsten Schritte in diesem Labor umfassen die Deklaration eines Arrays mit einer maximalen Größe, die Eingabe der Anzahl der Elemente vom Benutzer, die Eingabe von Zahlen in das Array, die Validierung der Benutzereingabe und die Anzeige der eingegebenen Zahlen. Am Ende des Labors haben Sie ein klares Verständnis dafür, wie Sie den Mittelwert eines Datensatzes in C programmieren.