Waktu: 60 Menit Sifat: Closed Book/Laptop/HP/Catatan dan sejenisnya ================================================== Jawablah soal-soal berikut secara tepat, serta berikan penjelasan secukupnya. Tanpa penjelasan, jawaban dianggap salah. 1. Hasil eksekusi program berikut adalah: #include <stdio.h> int fungsi (int, int); typedef int (*pf) (int, int); int proses (pf, int, int); int main() { printf ("%d\n", proses (fungsi, 6, 6)); return 0; } int fungsi (int a, int b) { return (a==b); } int proses (pf p, int a, int b) { return ((*p)(a, b)); }
2. Diberikan program singkat sebagai berikut.
#include <iostream.h> #include <conio.h> void main() { float bil; void clrscr(); bil = 2 && 1 ^ 3 || (4 -2); cout << "bilangan = " << bil << endl; } Keluaran program tersebut adalah ...
3. Untuk nilai n = 100, maka keluaran potongan program berikut ada-
lah: if (n > 50) { if (n <= 200) cout << “A”; } else if (n > 20) if (n % 2 == 0) cout << “B”; else cout << “C”;
4. Diberikan potongan program sebagai berikut:
char s1[20] = “well”; char s2[20] = “come”; int len; Jika diberikan perintah: s1[strlen (s1)–1] = ‘\0’; dan strcpy (s1, “s”); maka keluaran program tersebut adalah ...
5. Diberikan program dalam bahasa C, sebagai berikut:
#include <stdio.h> int main() { unsigned int z = 10; z = ~z; printf ("%d\n", z); } Keluaran program tersebut adalah ...