/***************************************************************/ /* Prof. Dr. Carsten Vogt */ /* FH Koeln, Fak. 07 / Nachrichtentechnik */ /* http://www.nt.fh-koeln.de/vogt */ /* */ /* Beispielprogramm Nr. 54 */ /* der frueheren Vorlesung Datenverarbeitung */ /* */ /* Das Programm demonstriert die Verwendung von Makros. */ /***************************************************************/ #include #include /* Definition eines Makros zur Berechnung des arithmetischen Mittels dreier Zahlen. Der Typ der Zahlen ist dabei nicht festgelegt! */ #define average(a,b,c) (a+b+c)/3 /* Hauptprogramm */ main() { /* Deklaration und Initialisierung von float- und int-Variablen */ float f_1, f_2, f_3, f_avg; int i_1, i_2, i_3, i_avg; f_1 = 3.0; f_2 = 2.4; f_3 = 2.4; i_1 = 7; i_2 = 9; i_3 = 2; /* Makrobenutzung */ f_avg = average(f_1,f_2,f_3); i_avg = average(i_1,i_2,i_3); /* Der Praeprozessor ersetzt die beiden vorherigen Zeilen anhand der rechten Seite der Makrodefinition durch f_avg = (f_1+f_2+f_3)/3; i_avg = (i_1+i_2+i_3)/3; */ /* Ergebnisausgabe */ printf("Das arith. Mittel von %3.1f, %3.1f und %3.1f ist %3.1f.\n\n",f_1,f_2,f_3,f_avg); printf("Das arith. Mittel von %1d, %1d und %1d ist %1d\n\n.",i_1,i_2,i_3,i_avg); getch(); }