1.
(Bobot 3) Dalam bahasa C, tipe data
String adalah turunan dari tipe data
a. char*(jawaban Benar)
b.
int
c.
float
d.
boolean
e.
array
2.
(Bobot 6)Dalam bahasa C, nilai true
dan false dinyatakan dengan
a.
Bilangan integer postifif
untuk true dan negatif untuk false
b. Bilangan integer 0 untuk false dan selain 0
untuk true*(jawaban Benar)
c.
Karakter T untuk true
dan F untuk false
d.
Bilangan integer -1 untuk false
dan 1 untuk true
e. Semua Salah
3.
(Bobot 5) Fungsi yang tidak mengembalikan
nilai adalah fungsi yang memiliki tipe kembalian
a.
null
b.
int
c. void*(jawaban Benar)
d.
char
e.
String
4. (bobot 8) Perhatikan kode berikut
int
genap(int x){
return x%2;
}
main
(void) {
if(genap(8))
printf(“genap”);
printf(“ganjil”);
}
Program diatas akan menghasilkan output
a.
genap
b. ganjil*(jawaban Benar)
c.
genapganjil
d.
(kosong)
e.
semua Salah
5.
(Bobot 5) Berikut adalah pernyataan yang paling benar tentang array
a.
Ukuran
array dapat diubah
b. Index array adalah semua
bilangan integer
c.
Tipe data elemen array boleh berbeda
d. Index array dimulai dari 0 *(jawaban Benar)
e.
Index Array dimulai dari 1
6. (Bobot
10) Perhatikan potongan kode berikut
int x[] = {2, 1, 5, 4, 3};
int y[] = {1, 3, 5, 7, 9};
int z[] = {0, 0, 0, 0, 0};
int i, j;
for(i = 0; i < 5; i++)
for(j = 0;
j < 5; j++)
if(y[j] == x[i])
z[i] = x[i];
Nilai array z diakhir perulangan
adalah
a.
{1, 3, 5}
b.
{1, 3, 5, 0, 0}
c.
{0, 1,
5, 0, 3} *(jawaban Benar)
d.
{1, 5, 3, 0, 0}
e. {1,2,3,5,7,9}
Untuk nomor 7 dan 8 perhatikan potongan program
berikut
int
main (void) {
int i, cari;
for(i = 0; i < size; i++) {
printf(“input : “);
scanf(“%d”, &data[i]);
}
printf(“cari : ”);
scanf(“%d”, &cari);
if(ketemu(cari))
printf(“Ketemu, data ke :
%d”, ketemu(cari));
else
printf(“Tidak ketemu”);
return
0;
}
int
ketemu (int c) {
int i;
for(i
= 0; i < size; i++)
if(c == data[i])
return i;
return
-1;
}
7. (Bobot
8) Jika data yang diinputkan adalah: {2, 1, 3, 1, 2}, dan data yang
dicari adalah 2, maka output di layar adalah:
a.
Ketemu, data ke : 0
b.
Ketemu, data ke : 4
c.
Ketemu, data ke : 1
d. Ketemu,data
ke : 2
e. Tidak ketemu *(jawaban Benar)
8. (bobot
8) Jika
data yang diinputkan adalah: {2, 1, 3, 1, 2}, dan data yang dicari
adalah 5, maka output di layar adalah:
a.
(tidak ada output)
b. Ketemu, data ke : -1 *(jawaban Benar)
c.
Ketemu, data ke : 0
d.
Tidak ketemu
e. ERROR
9. (Bobot
7) Pernyataan berikut berlaku untuk pencarian biner:
a.
Bekerja
pada data acak dan terurut *(jawaban
Benar)
b.
Sama cepat dengan pencarian beruntun
c.
Dapat diimplementasikan menggunakan
rekursi
d.
Tidak dapat digantikan oleh
pencarian beruntun
e. Semua
Benar
10. (Bobot
5) Berikut
ini yang tidak termasuk metode pengurutan adalah:
a.
Bubble sort
b.
shell sort
c.
Binary
sort *(jawaban Benar)
d.
Insertion sort
e. Tree
sort