/***************************************************************/ /* Prof. Dr. Carsten Vogt */ /* FH Koeln, Fak. 07 / Nachrichtentechnik */ /* http://www.nt.fh-koeln.de/vogt */ /* */ /* Beispielprogramm Nr. 45 */ /* der frueheren Vorlesung Datenverarbeitung */ /* */ /* Das Programm demonstiert die Uebergabe von Arrays an Funk- */ /* tionen: Es ist moeglich, bei der Funktionsdefinition die */ /* Arraylaenge offenzuhalten. Arrays werden stets per Referenz-*/ /* aufruf uebergeben. */ /***************************************************************/ #include #include void vektorsumme(int a[],int b[],int c[],int laenge) { /* Die Funktion berechnet die Vektorsumme zweier int-Vektoren (= Arrays) a und b und speichert sie im Vektor c ab. Die Vektorsumme ist dabei definiert als c[i] = a[i] + b[i] fuer alle Arrayindizes i. Es wird vorausgesetzt, dass a, b und c gleich lang sind. Die Vektorlaenge ist hier nicht von vornherein festgelegt, so dass die Funktion hintereinander fuer Vektoren unterschiedlicher Laengen aufgerufen werden kann. Die konkrete Laenge wird bei einem Aufruf im Parameter laenge angegeben. Da Arrays stets per Referenzaufruf uebergeben werden, hat die Aenderung von c in der Funktion unmittelbare Auswirkung auf den aktuellen Para- meter, d.h. den zu besetzenden Summenarray im aufrufenden Programm. */ /* Berechnung der Komponentensummen in einer Schleife */ int i; for (i=0;i