Hallo zusammen!
Das ist mein erster Post hier, weshalb ich um Nachsicht bitte… Danke!
Ich studiere nun im 3. Semester Wirtschaftsingenieurwesen und muss in kürze (3 Wochen) eine Klausur in Informatik II, C Programmierung, schreiben. Obwohl ich - für meine Verhältnisse - recht fleißig war, stoße ich immer wieder auf scheinbar unlösbare Probleme in den alten Klausuren, Probeklausuren…
Hier meine 1. Frage:
Aufgabe aus einer Probeklausur:
_ _ _ _ _
Wie lauten die Prototypen folgender Funktionen?
a)
Die Funktion compose liefert eine null-terminierte Zeichenkette, die aus drei übergebenen Zeichen erzeugt wird.
b)
Die Funktion maxFeld besitzt zwei Felder von double-Zahlen und gibt entweder 1 oder 2 zurück.
(Achtung: Welche Argumente benötigen diese Funktionen?)
_ _ _ _ _
Ich hänge - bedauerlicherweise - bereits bei a) und habe mir deshalb um b) noch keine großen Gedanken gemacht…
Es ist nicht so, dass ich euch einfach um eine Antwort bitten will. Mir liegt viel daran, dass auch zu verstehen, weshalb ihr unten stehend mal meinen Lösungsversuch erhaltet, bei welchem aber wirklich nichts Sinnvolles zu Tage kam.
_ _ _ _ _
#include
#include
#include
char* string (char *x, char *y, char *z);
main() {
char d;
char *a, *b, *c;
printf(„Eingabe a:\n“);
scanf("%s", &a);
printf(„Eingabe b:\n“);
scanf("%s", &b);
printf(„Eingabe c:\n“);
scanf("%s", &c);
d = string(char *a, char *b, char *c);
printf(„d: %c“, d);
return 0;
}
char* string (char *x, char *y, char *z) {
char *zusammen;
char array[4];
array[0] = *x;
array[1] = *y;
array[2] = *z;
array[3] = ‚\0‘;
*zusammen = array[];
return *zusammen;
}
_ _ _ _ _
Der Gedankengang hinter obigem Chaos ist folgender:
In der main-Funktion übergeb ich 3 Buchstaben an die Adr. von a, b und c. In der Funktion string rufe ich diese wieder auf und hinterlege sie in dem array, welches ich dann an den char zusammen übergebe und im main wieder erhalte…
Naja, leider funktioniert das iwrgendwie nicht so richtig…
Vielen Dank vorab für eure Bemühungen!!!
Liebe Grüße, Orchidee!