wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Ujian Akhir Semester — Algoritma dan Pemrograman (Bahasa C)

Total questions: 40

Worksheet time: 3600secs

Name
Class
Date
1.

Pilih satu jawaban yang paling benar: Fungsi standar C untuk menghitung panjang string adalah

a)

strcount()

b)

strlen()

c)

sizeof()

d)

length()

2.

Pilih satu jawaban yang paling benar: String dalam C selalu diakhiri oleh karakter

a)

\n

b)

\t

c)

\0

d)

EOF

3.

Pilih satu jawaban yang paling benar: Pernyataan yang benar tentang deklarasi char str[10]; adalah

a)

Menyimpan 10 karakter tanpa \0

b)

Menyimpan 10 karakter + \0

c)

Menyimpan 9 karakter + \0

d)

Tidak bisa menyimpan string

4.

Pilih satu jawaban yang paling benar: Operator untuk mengambil alamat variabel adalah

a)

*

b)

&

c)

->

d)

#

5.

Pilih satu jawaban yang paling benar: Fungsi untuk alokasi memori dinamis di C adalah

a)

alloc()

b)

new()

c)

malloc()

d)

memory()

6.

Pilih satu jawaban yang paling benar: Setelah malloc(), memori dibebaskan dengan

a)

delete()

b)

remove()

c)

free()

d)

clear()

7.

Pilih satu jawaban yang paling benar: Array int a[3][4]; memiliki jumlah elemen

a)

7

b)

12

c)

24

d)

3

8.

Pilih satu jawaban yang paling benar: Keyword untuk mendefinisikan struktur data di C

a)

class

b)

struct

c)

record

d)

object

9.

Pilih satu jawaban yang paling benar: Algoritma pencarian yang memerlukan data terurut

a)

Linear Search

b)

Sequential Search

c)

Binary Search

d)

Hash Search

10.

Pilih satu jawaban yang paling benar: Kompleksitas waktu Bubble Sort (worst case)

a)

O(n)

b)

O(log n)

c)

O(n log n)

d)

O(n2)O(n^2)

11.

Pilih satu jawaban yang paling benar: Fungsi membuka file di C

a)

open()

b)

fileopen()

c)

fopen()

d)

read()

12.

Pilih satu jawaban yang paling benar: Mode "w" pada fopen() berarti

a)

Membaca file

b)

Menambahkan data

c)

Menulis dan menghapus isi lama

d)

Membaca dan menulis

13.

Pilih satu jawaban yang paling benar: Pointer yang tidak menunjuk alamat valid disebut

a)

Void pointer

b)

Wild pointer

c)

Null pointer

d)

Static pointer

14.

Pilih satu jawaban yang paling benar: sizeof(char) bernilai

a)

2

b)

4

c)

1

d)

Tergantung compiler

15.

Pilih satu jawaban yang paling benar: Fungsi membaca karakter dari file

a)

getch()

b)

getc()

c)

read()

d)

scan()

16.

Pilih satu jawaban yang paling benar: strcmp() digunakan untuk

a)

Menyalin string

b)

Menggabungkan string

c)

Membandingkan string

d)

Menghitung panjang string

17.

Pilih satu jawaban yang paling benar: Array di C bersifat

a)

Dinamis

b)

Fleksibel

c)

Statis

d)

Berbasis objek

18.

Pilih satu jawaban yang paling benar: Algoritma sorting paling sederhana

a)

Merge Sort

b)

Quick Sort

c)

Bubble Sort

d)

Heap Sort

19.

Pilih satu jawaban yang paling benar: File pointer di C bertipe

a)

file

b)

FILE

c)

fp

d)

struct file

20.

Pilih satu jawaban yang paling benar: Pointer menyimpan

a)

Nilai variabel

b)

Tipe data

c)

Alamat memori

d)

Ukuran data

21.

Pilih satu jawaban yang paling benar: Output kode berikut: char s[]="Algoritma"; printf("%c", s[3]);

a)

A

b)

g

c)

o

d)

r

22.

Pilih satu jawaban yang paling benar: Jika int *p; p=&x; maka *p berarti

a)

Alamat p

b)

Alamat x

c)

Nilai x

d)

Nilai p

23.

Pilih satu jawaban yang paling benar: Kelemahan Linear Search

a)

Sulit diimplementasikan

b)

Tidak bisa array

c)

Lambat untuk data besar

d)

Harus terurut

24.

Pilih satu jawaban yang paling benar: malloc(10*sizeof(int)) mengalokasikan

a)

10 byte

b)

20 byte

c)

40 byte

d)

Tergantung OS

25.

Pilih satu jawaban yang paling benar: Akses elemen baris ke-2 kolom ke-3 pada a[3][4] adalah

a)

a[1][2]

b)

a[2][3]

c)

a[3][4]

d)

a[1][3]

26.

Pilih satu jawaban yang paling benar: Kondisi berhenti Binary Search

a)

Data ditemukan/indeks habis

b)

Data selalu ditemukan

c)

Data genap

d)

Array penuh

27.

Pilih satu jawaban yang paling benar: fscanf() digunakan untuk

a)

Menulis file

b)

Membaca terformat

c)

Menutup file

d)

Menghapus file

28.

Pilih satu jawaban yang paling benar: Sorting dengan konsep pivot

a)

Bubble

b)

Insertion

c)

Quick

d)

Selection

29.

Pilih satu jawaban yang paling benar: Pointer belum diinisialisasi menyebabkan

a)

Aman

b)

Selalu NULL

c)

Error potensial

d)

Otomatis 0

30.

Pilih satu jawaban yang paling benar: strcpy(dest, src) berarti

a)

Bandingkan

b)

Salin

c)

Gabung

d)

Hapus

31.

Pilih satu jawaban yang paling benar: Kesalahan pada kode char *s; strcpy(s, "Data"); adalah

a)

Tidak ada

b)

Belum alokasi

c)

strcpy salah

d)

Pointer const

32.

Pilih satu jawaban yang paling benar: Output kode berikut: int a[]={1,2,3}; int *p=a; printf("%d", *(p+1));

a)

1

b)

2

c)

3

d)

Alamat

33.

Pilih satu jawaban yang paling benar: Best case Insertion Sort

a)

O(n2)O(n^2)

b)

O(log n)

c)

O(n log n)

d)

O(n)

34.

Pilih satu jawaban yang paling benar: Lupa memanggil free() menyebabkan

a)

Lambat

b)

Memory leak

c)

Stack overflow

d)

Buffer overflow

35.

Pilih satu jawaban yang paling benar: Mode file "a" berarti

a)

Menimpa

b)

Membaca

c)

Menambah di akhir

d)

Read-only

36.

Pilih satu jawaban yang paling benar: Ukuran struct tergantung

a)

Field

b)

Pointer

c)

Compiler

d)

Alignment

37.

Binary Search gagal jika

a)

Data besar

b)

Data kecil

c)

Tidak terurut

d)

Bertipe int

38.

fgets() lebih aman karena

a)

Cepat

b)

Tanpa newline

c)

Batasi panjang

d)

Sederhana

39.

Perbedaan utama antara array statis dan dinamis adalah

a)

Tipe

b)

Lokasi

c)

Ukuran runtime

d)

Akses

40.

Kesalahan yang terjadi setelah free() lalu tetap mengakses pointer adalah

a)

Aman

b)

Leak

c)

Dangling pointer

d)

Overflow