Neonof
Mitglied
Hallo einmal,
ich arbeite gerade einmal dieses C-Tutorial durch.
Zum Thema Arrays (Schleifen) gab es nun folgende Aufgabe:
Die Aufgabenstellung habe ich folgendermaßen gelöst:
Das Programm wird erfolgreich kompiliert, die Kommandozeile öffnet sich, man kann alle Werte eingeben und das Programm läuft zu Ende. Beim Beenden jedoch taucht diese Fehlermeldung auf:
Screenshot
Der Debugger unterbricht die Ausführung und die angezeigte Marke bleibt nach der return-Anweisung stehen:
Screenshot
Nun habe ich natürlich etwas gegooglet und stieß dabei auf diesen Thread, in dem diese Fehlermeldung schon einmal angesprochen wurde. Tobias erklärte dort, dass der Fehler lediglich bedeutet, dass ein Wert in eine Variable gespeichert werden soll, obwohl diese ihn nicht aufnehmen kann.
Der Ausführung nach sieht es für mich aus, als ob der Fehler beim "return 0;" liegt, doch das macht doch keinen Sinn, zumal es ja um das Array noten geht, oder? o.0
Auf dem zweiten Screenshot sieht man die Programmausführung und dass alle Variablen korrekt berechnet wurden.
Ich danke schon einmal für Hilfe
ich arbeite gerade einmal dieses C-Tutorial durch.
Zum Thema Arrays (Schleifen) gab es nun folgende Aufgabe:
Schreibe ein Programm, dass den Benutzer auffordert, 10 Schulnoten als Kommazahlen einzugeben. Diese Zahlen sollen in einem Array zwischengespeichert werden. Im Anschluss berechnet das Programm die Summe und den Durchschnitt. Diese Daten werden am Bildschirm ausgegeben.
Die Aufgabenstellung habe ich folgendermaßen gelöst:
Code:
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h>
int main() {
file10();
printf("\nAlle Programme wurden ausgef%chrt.\n", 129);
system("Pause");
return 0;
}
Code:
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h>
int file10() {
float noten[9], summe = 0;
int i;
for (i = 0; i <= 9; i++) {
printf("Geben Sie die %d. Note ein: ", i + 1);
scanf("%f", ¬en[i]);
}
printf("\n\nDies sind die zuvor eingegebenen Noten:\n");
for (i = 0; i < 9; i++) {
printf("%.2f, ", noten[i]);
}
printf("%.2f\n\n", noten[i]);
for (i = 0; i <= 9; i++) {
summe += noten[i];
}
printf("Dies ist die Summe: %.2f\n", summe);
printf("Und dies ist der Durchschnitt: %.2f\n", summe / 10);
return 0;
}
Das Programm wird erfolgreich kompiliert, die Kommandozeile öffnet sich, man kann alle Werte eingeben und das Programm läuft zu Ende. Beim Beenden jedoch taucht diese Fehlermeldung auf:
Screenshot
Der Debugger unterbricht die Ausführung und die angezeigte Marke bleibt nach der return-Anweisung stehen:
Screenshot
Nun habe ich natürlich etwas gegooglet und stieß dabei auf diesen Thread, in dem diese Fehlermeldung schon einmal angesprochen wurde. Tobias erklärte dort, dass der Fehler lediglich bedeutet, dass ein Wert in eine Variable gespeichert werden soll, obwohl diese ihn nicht aufnehmen kann.
Der Ausführung nach sieht es für mich aus, als ob der Fehler beim "return 0;" liegt, doch das macht doch keinen Sinn, zumal es ja um das Array noten geht, oder? o.0
Auf dem zweiten Screenshot sieht man die Programmausführung und dass alle Variablen korrekt berechnet wurden.
Ich danke schon einmal für Hilfe
