Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

String & Struct Exercise

Total questions: 17

Worksheet time: 30mins

Name
Class
Date
1.

Apakah output dari program berikut ?


typedef struct

{

char merek[30];

char type[10];

int tahun;

int harga;

}Mobil;


int main ()

{

Mobil x;

x.merek ="Toyota";

x. type ="Innova G";

x. harga = 25000;

printf ("%s %s %d $%d", x.merek, x.type, 2019, x.harga);

}

(a)  

2.

struct Barang

{

char nama[30];

char kode[10];

int stock;

int harga;

};


Deklarasi variable yang struct yang sesuai dengan definisi di atas adalah :

a)

Barang satu;

b)

struct satu;

c)

struct Barang satu;

d)

struct satu Barang;

3.

Definisikanlah struct dengan nama Mahasiswa yang terdiri dari elemen:

nim (string max 10), nama (string max 30), alamat(string max 50), jurusan (string max 3), gpa (float) dengan menggunakan keyword typedef struct

(a)  

4.

typedef struct

{

int pembilang;

int penyebut;

}Pecahan;


Deklarasilah 2 variable struct Pecahan dengan nama : pec1 dan pec2.

(a)  

5.

#include <string.h>

struct student

{

char *nama;

char *alamat;

};


int main ()

{

struct student stu1;

//1. Buatlah statement untuk membaca nama yang diinput dengan menggunakan fungsi gets()

.........................................

}

a)

gets (nama);

b)

gets(stu1.nama);

c)

gets(student stu1.nama);

d)

gets (struct student stu1.nama);

6.

typedef struct {

int pembilang;

int penyebut;

}Pecahan;


Pecahan pec1,pec2;


int main ()

{

pec1.pembilang =4;

pec1.penyebut =2;

pec2.pembilang=5;

pec2.penyebut=2;


if (pec1.penyebut == pec2.penyebut){

printf ("Yes"); }

else { printf ("No"); }

}

Apakah output dari program di atas ?

(a)  

7.

Lengkapilah program berikut :


typedef struct {

int bil1;

int bil2;

int bil3;

int hasil;

}Bilangan;


int main ()

{

//1. Deklarasilah variable struct Bilangan dengan nama

num

//2. Buatlah statement untuk mengisi nilai 10 di variable bil1dari struct Bilangan

//3. Buatlah statement untuk mengisi nilai 15 di variable bil2 dari struct Bilangan

//4. Jumlahkan bil1+bil2+bil3, hasilnya disimpan di variable hasil dari struct Bilangan

}

(a)  

8.

Lengkapilah program berikut :


typedef struct

{

char *nama;

char *nim;

}student;


int main ()

{

student st[2];

//1. baca input nama student pertama, gunakan gets

//2. baca input nama student kedua, gunakan gets

//3. Bandingkan kedua nama , gunakan fungsi strcmp

// jika nama pertama huruf-hurufnya lebih dahulu dari nama kedua , maka tampilkan nama pertama, tetapi jika tidak, tampilkan nama pertama


}

4 lines
9.

Fungsi string yang digunakan untuk menyalin string adalah....

a)

strcpy, strncpy, strdup

b)

strcpy, strcnpy, strdup

c)

strpcy, strcnpy, strdup

d)

strcopy, strncopy, strduplicate

10.

Fungsi untuk membandingkan string adalah...

a)

strdup

b)

strchr

c)

strupr

d)

strncmp

11.

char nama[]= "Jeremiah";

char nama2[] ="John";

char nama3;


strcpy(nama3,nama);


printf ("Nama = %s", nama3);

Apakah output dari statement printf() ?

a)

Nama = John

b)

Nama= Jeremiah

c)

Tidak ada

12.

Apakah output dari program berikut :


int main (){

char str1[ ] = "Hello";

char *str2;

char str[ ]= "Hi";

str2= strdup (str1);

printf ("%s", str2);

}

Apakah output dari program di atas?

(a)  

13.

Fungsi string yang digunakan untuk menghitung jumlah karakter dalam string adalah....

a)

strcat

b)

strcpy

c)

strcmp

d)

strlen

14.

Fungsi strcmp () digunakan untuk membandingkan 3 string

a)

Benar

b)

Salah

15.

Fungsi strcmp () akan mengembalikan bilangan bulat sebagai hasil perbandingannya.

a)

Benar

b)

Salah

16.

Nilai perbandingan yang dihasilkan oleh fungsi strcmp() adalah :

<0 , jika stringPertama lebih kecil dari stringKedua

==0, jika stringPertama sama dengan stringKedua

>0, jika stringPertama lebih besasr dari stringKedua

a)

Benar

b)

Salah

17.

int main ()

{

char nama1[30] =" Hello ";

char nama2[30] ="Sunshine";

if (strcmp (nama1, nama2) >0 )

printf ("%s", nama2);

else

printf ("%s",nama1);


}

a)

Hello

b)

Sunshine