Title | Klausur WS20 21 |
---|---|
Course | Informatik |
Institution | Hochschule Darmstadt |
Pages | 6 |
File Size | 237.1 KB |
File Type | |
Total Downloads | 344 |
Total Views | 473 |
H_DA Dr. K. Frank Fachbereich IAlle Blätter, die abgegeben werden, sind mit dem Namen und der Matrikelnummer zu kennzeichnen.Es gibt insgesamt 5 Aufgaben. Für jede dieser 5 Aufgaben gibt es 20 Punkte.Die Zeit für die Bearbeitung der Aufgaben beträgt90 MinutenMarkieren Sie Ihre Lösungen deutlich. Lös...
H_DA
Klausur 08.3.2021
Informatik 1 für Mechatronik
Dr. K. Frank Fachbereich I
Alle Blätter, die abgegeben werden, sind mit dem Namen und der Matrikelnummer zu kennzeichnen. Es gibt insgesamt 5 Aufgaben. Für jede dieser 5 Aufgaben gibt es 20 Punkte. Die Zeit für die Bearbeitung der Aufgaben beträgt 90 Minuten Markieren Sie Ihre Lösungen deutlich. Lösungen, die nicht eindeutig zuzuordnen sind, können nicht gewertet werden. Sollten Unklarheiten oder Mehrdeutigkeiten bei der Aufgabenstellung auftreten, so notieren Sie bitte, wie Sie die Aufgabe interpretiert haben. ACHTUNG! Es gibt auch Punkte für teilweise gelöste Aufgaben und für Ansätze auf Lösungen! Punkte 90 85 80 75 70 65 60 55 50 30 Note 1 1,3 1,7 2 2,3 2,7 3 3,3 3,7 4
H_DA
Klausur 08.3.2021
Informatik 1 für Mechatronik
Dr. K. Frank Fachbereich I
Aufgabe 1 (Rechtschreibreform) Im Zuge der Rechtschreibreform ist noch immer einiges zu tun. Ein Redakteur möchte von Ihnen eine Funktion implementiert haben, welche in einem Text alle Vorkommnisse von ph (bzw. Ph) in f (bzw. in F) umwandelt. void rechtschreibmod(char* satz); Aufgabe: Schreiben Sie eine Funktion, welche obiger Deklaration genügt. Der Funktion wird ein String übergeben, in welchem alle vorkommenden ph durch f und alle Ph durch F ersetzt werden sollen. • Sie sollen keine Funktionen aus anderen Bibliotheken benutzen. • Sie sollen direkt mit dem übergebenen String (ohne Hilfsstring) arbeiten.
H_DA
Klausur 08.3.2021
Informatik 1 für Mechatronik
Dr. K. Frank Fachbereich I
Aufgabe 2 Teil A Welche der folgenden Begriffe sind gültige C-Namen (Bezeichner). Bitte geben Sie die Zeilenkennung und gültig/ungültig an. (Beispiel: Zeile A gültig) Zeile A B C D E
Bezeichner 8ung Zaehler#3 z_3 continue free
gültig ungültig
Teil B Welcher Wert wird mit den folgenden Anweisungen in den Variablen gespeichert? Tragen Sie die Zeilenkennung und das berechnete Ergebnis jeweils in Ihr Lösungsblatt ein und wählen Sie dabei eine Darstellung, die dem Datentyp entspricht. Die Ergebnisvariablen sind wie folgt vereinbart: double d; int i;
Zeile A B C D E
Anweisung d = (int) (3 * 3.2 / 2.0 ); d = (int) (3 * 3.2) / 2.0 ; d = (int) 3 * 3.2 / 2.0 i = 10 + 012 + 0xA i = !!1 ;
Gespeichertes Ergebnis
H_DA
Klausur 08.3.2021
Informatik 1 für Mechatronik
Dr. K. Frank Fachbereich I
Aufgabe 3 (Programmfehler) Das folgende Programm soll die Summe aller natürlichen Zahlen berechnen, deren Obergrenze durch das Makro MAXIMUM bestimmt wird und gibt diese Summe aus. Im Programm stecken zahlreiche Fehler. • Einige dieser Fehler bewirken, dass das Programm nicht korrekt
compiliert. Markieren und berichtigen Sie diese Fehler. • Ein Fehler betrifft die Richtigkeit des Algorithmus (es wird also nicht,
wie erwartet, die Summe gebildet). Schreiben Sie das Programm so korrigiert, dass ein lauffähiges Programm ohne Warnungen nach dem ANSI Standard compiliert wird. Zeigen Sie auch, welcher Fehler verhindert, dass der Algorithmus korrekt funktioniert.
1. #include ’stdio.h’ 2. . 3. #define MAXIMUM 23 ; 4. . 5. int main() 6. { 7. int zahl == 0; 8. . 9. for ( int i = 0 , i < MAXIMUM , i++) ; 10. { 11. zahl =+ i; 12. } 13.. printf(’Summe von 1 .. %f: %f\n’,MAXIMUM,zahl); 14.}
H_DA
Klausur 08.3.2021
Informatik 1 für Mechatronik
Dr. K. Frank Fachbereich I
Aufgabe 4 Frage 4/1
Welcher Datentyp steht im C-Standard nicht zur Verfügung? 1. float 2. octa 3. double 4. int
Frage 4/2
Welche der folgenden Anweisungen verursacht eine Warnung? 1. int d[] = {0}; 2. int c[10] = {1,2}; 3. int b[2] = {1,2,3}; 4. int a[0];
Frage 4/3 Welcher Schleifentyp existiert in C++ nicht? 1. while-Schleife 2. for-Schleife 3. repeat-until-Schleife 4. do-while-Schleife Frage 4/4
Welcher der folgenden Ausdrücke wird garantiert zu true ausgewertet? 1. (a < b) && (b < c) 2. !(b || a) 3. !!(a || !a) 4. (a >= b && b >= a)
H_DA
Klausur 08.3.2021
Informatik 1 für Mechatronik
Dr. K. Frank Fachbereich I
Aufgabe 5 In dieser Aufgabe realisieren wir unsere addieren() – Funktion aus dem Praktikum nur mit Zeigern. Es werden also keine Werte übergeben (Call by value), sondern nur Verweise auf die Speicherstellen (Call by adress). Schreiben Sie also eine Funktion, die zwei INT-Werte als Parameter bekommt, addiert und die Summe als Ergebnis dem aufrufenden Programm übergibt ....