Gdp 03 Funktionen und Arrays
Funktionen
/* funktionen.c Das Hauptprogramm wird mit Funktionen ausgestattet, die mit globalen und lokalen Variablen umgehen. Eine Überdeckung versteckt eine globale vor einer lokalen Variablen. */ #include <stdio.h> int GLOBAL_C = 4224; // Definition einer globalen Variablen void funktion1(); void funktion2(); int funktion3(); int funktion4(); int main() { int a = 89; // Definition lokaler Variablen für main() int b = 98; funktion1(); // Aufruf der Unterfunktionen funktion2(); printf("Main:\n"); printf("a = %i\nb = %i\nGLOBAL_C = %i\n\n", a, b, GLOBAL_C); printf("Funktion 3:\n"); printf("Rückgabe der globalen Variable: %i\n\n", funktion3()); printf("Funktion 4:\n"); printf("a^2 + b^2 = %i\n\n", funktion4(a, b)); } void funktion1() { int a = 42; // Definition lokaler Variable für funktion1() printf("Funktion 1:\n"); printf("a = %i\nGLOBAL_C = %i\n\n", a, GLOBAL_C); } void funktion2() { int b = 24; // Definition lokaler Variable für funktion2() int GLOBAL_C = 0; // lokale Variable überdeckt globale Variable printf("Funktion 2:\n"); printf("b = %i\nGLOBAL_C = %i\n\n", b, GLOBAL_C); } int funktion3() { return(GLOBAL_C); // gibt globale Variable zurück } // Funktion addiert zwei Integer und gibt die Summe als Integer zurück int funktion4(int alpha, int beta) { int gamma; gamma = alpha + beta; return(gamma); }
Arrays
/* array_umsatz.c In einem Array werden 7 Tagesumsatze gespeichert. Es wird die Summe ermittelt und der höchste wie niedrigste Umsatz ausgegeben. */ #include <stdio.h> int main() { float umsatz[7]; // Deklaration eines Arrays der Größe 7 (0...6) float summe = 0; int i; // Definition von i in for-Schleifen bei C nicht möglich float hoechsterWert, niedrigsterWert; printf("Bitte geben Sie die Tagesumsaetze der letzten 7 Tage ein"); for(i = 0; i < 7; ++i) { printf("\nWochentag %i: ", i + 1); // scanf benötigt die Adresse der Variable und nicht Variable selbst, // es würde zu einem Fehler kommen. scanf("%f", &umsatz[i]); } // Beide Variablen müssen mit einem Startwert belegt werden, sonst ist // niedrigster Wert z.B. immer 0 hoechsterWert = umsatz[0]; niedrigsterWert = umsatz[0]; for(i = 0; i < 7; ++i) { summe += umsatz[i]; if(hoechsterWert < umsatz[i]) hoechsterWert = umsatz[i]; if(niedrigsterWert > umsatz[i]) niedrigsterWert = umsatz[i]; } printf("\nDer Wochenumsatz betraegt %.2f,\n", summe); printf("der niedrigste Umsatz war %.2f,\n", niedrigsterWert); printf("der höchste Umsatz war %.2f.\n\n", hoechsterWert); }
Seiten Revision: 2, zuletzt bearbeitet: 17 Nov 2011 19:26





