1.
Dalam bahasa C, tipe data String
adalah turunan dari tipe data
Untuk nomor 14 dan 15
Nb: Yang berwarna merah Adalah jawabannya
a.
char
b.
int
c.
float
d.
boolean
2.
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
c.
Karakter T untuk true dan F untuk false
d.
Bilangan integer -1 untuk false dan
1 untuk true
3.
Fungsi yang tidak mengembalikan
nilai adalah fungsi yang memiliki tipe kembalian
a.
null
b.
int
c.
void
d.
char
4.
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
c. genapganjil
d.
(kosong)
5.
Berikut adalah pernyataan yang paling benar
tentang array
a.
Ukuran aray dapat diubah
b.
Index array adalah semua bilangan integer
c.
Tipe data elemen array boleh berbeda
d.
Index array dimulai dari 0
6.
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}
d.
{1, 5, 3, 0, 0}
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.
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.
Tidak ketemu
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
c.
Ketemu, data ke : 0
d.
Tidak ketemu
9. Pernyataan
berikut berlaku untuk pencarian biner:
a.
Bekerja pada data acak dan terurut
b.
Sama cepat dengan pencarian beruntun
c.
Dapat diimplementasikan menggunakan rekursi
d.
Tidak dapat digantikan oleh pencarian beruntun
10. Berikut
ini yang tidak termasuk metode pengurutan adalah:
a.
Bubble sort
b.
Heap sort
c.
Binary sort
d.
Insertion sort
11. Metode
pengurutan yang dilakukan dengan cara membandingkan dua elemen yang saling
berekatan adalah
a.
Bubble sort
b.
Heap sort
c.
Binary sort
d.
Insertion sort
12. Diketahui
stack bertipe char dengan ukuran 4 dengan nilai yang kosong, kemudaian
dikenakan operasi berikut
push(‘a’), push(‘b’), pop(), push(‘z’), pop(), push(‘c’),
push(‘d’), pop(), pop(), push(‘p’), push(‘q’), push(‘r’), push(‘s’), pop()
maka
isi stack sekarang adalah
a.
{‘a’, ‘b’, ‘c’, ‘d’, ‘p’, ‘q’, ‘r’, ‘s’}
b.
{‘a’, ‘p’, ‘q’, ‘r’}
c.
{‘a’, ‘b’, ‘c’, ‘d’}
d.
{‘a’, ‘p’, ‘q’}
13. Perhatikan
operasi aritmatik berikut:
2 + 3 * 5
Jika
diselesaikan dengan menggunakan cara postfix maka ilustrasi urutan operasi
penyelesaiannya dalam stack adalah:
a.
push(2) + push(3) + push(5)
b.
push(3), push(5), push(pop() *
pop()), push(2), push(pop() + pop())
c.
push(3) * push(5) + push(2)
d. push(3
* 5), push(2), push(pop() + pop()), pop() Untuk nomor 14 dan 15
Disebuah Kampung di selenggarakan sunatan massal. Karena di
perkirakan pesertanya tidak terlalu banyak , panitia hanya menyediakan kartu
antrian sebanyak 8 buah dengan nomor urut 0-7. Jumlah peserta yang mendaftar
ada 12 anak (missal nama A, B, C, D, E, F, G, H, I, J, K, L) sehingga
kemungkinan kartu kartu antrian tersebut ada yang di pakai 2 kali . Pada hari
yang telah di tentukan , 7 anak (A-G) sudah mengambil antrian dan tinggal
menunggu proses penyunatan. Setelah anak A, B, C selesaidisunat anak H dating mengambil
kartu antrian. Anak I, J, K dan L dating setelah anak D, E, F selesai disunat
14 Contoh kasus di atas lebih tepat di ilustrasikan
menggunakan:
a.
Queue
b.
Double Stack
c.
Circular Queue
d.
Stack
15 Kartu antrian yang digunakan sebanyak 2 kali adalah yang
benomor urut:
a.
0, 1, 2, 3
b.
0, 1, 2, 3, 4
c.
1, 2, 3, 4
d.
1, 2, 3