Codebeispiele
Ein C-Programm
Hinweis: Wird es als ./prog 1 2 3 4 5 gestartet:
- hat
argcden Wert 6, - und
argvist das Array{"./prog", "1", "2", "3", "4", "5"}.
Die Funktion atof konvertiert eine Zeichenkette in eine Fliesskommazahl.
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
float sum = 0;
for (int i = 1; i < argc; i++) {
sum += atof(argv[i]);
}
printf("mean:\t%10.2f\n", sum / (argc - 1));
if ((argc - 1) % 2 == 0) {
float left = atof(argv[(argc - 1) / 2]);
float right = atof(argv[(argc - 1) / 2 + 1]);
printf("median:\t%10.2f\n", (left + right) / 2);
} else {
printf("median:\t%10.2f\n", atof(argv[(argc - 1) / 2 + 1]));
}
return 0;
}Fragen
- Was macht das folgende Programm?
- Wie viele Sachen macht das Programm?
- Welche Teile des Programms sind wohl besonders fehleranfällig?
- Wie liesse sich dieses Programm verbessern?