STRUCT & ADT

  • Structure adalah kumpulan variabel yang mengacu pada sebuah nama. Structure dipakai untuk menyatakan informasi yang berhubungan.
  • Variabel-variabel yang membentuk sebuah structure disebut elemen structure. Structure didalam c sama dengan record didalam pascal.
  • Perbedaan array dan struct :
    • Array hanya dapat menyimpan sejumlah data yang bertipe sama.
    • Struktur dapat menyimpan sejumlah data yang berbeda-beda tipe datanya.

Deklarasi struct ada 2 yaitu:

  • Tanpa typedef (bentuk umum)

struct structName{

tipeData namaVariabel;

tipeData namaVariabel;

};

 

Contoh :

struct teman

{

char nama[50];

char alamat[50];

char hobi[50];

int umur;

};

Penulisan deklarasi struct bisa ditulis seperti berikut struct teman temanku;

 

  • Menggunakan typedef

typedef struct{

tipeData namaVariabel;

tipeData namaVariabel;

}

 

Contoh  :

typedef struct {

char nama[50];

char alamat[50];

char hobi[50];

int umur;

} teman;

 

Penulisan deklarasi struct bisa ditulis seperti berikut  teman temanku;

Jadi, jika menggunakan typedef pendeklarasian tidak memakai struct.

 

  • Mengakses elemen pada struct

Untuk mengakses elemen pada struct, kita harus menggunakan operator “.” (titik) diikuti dengan nama atribut yang ingin diakses.

 

Contoh program

  • Tanpa typedef(bentuk umum)

#include <stdio.h>

#include <stdlib.h>

struct teman

{

char nama[50];

char alamat[50];

char hobi[50];

int umur;

};

 

int main()

{

struct teman temanku;

printf(“=== Input data teman ===\n”);

printf(“Nama = “);

gets(temanku.nama);

printf(“Alamat = “);

gets(temanku.alamat);

printf(“Hobi = “);

gets(temanku.hobi);

printf(“Umur = “);

scanf(“%d”, &temanku.umur);

printf(“========================\n”);

printf(“=== Cetak data teman ===\n”);

printf(“Nama : %s\n”, temanku.nama);

printf(“Alamat : %s\n”, temanku.alamat);

printf(“Hobi : %s\n”, temanku.hobi);

printf(“Umur : %d\n”, temanku.umur);

printf(“========================\n”);

return 0;

}

Hasil compile :

2

  • Menggunakan typedef

#include <stdio.h>

#include <stdlib.h>

typedef struct

{

char nama[50];

char alamat[50];

char hobi[50];

int umur;

}teman;

 

int main()

{

teman temanku;

printf(“=== Input data teman ===\n”);

printf(“Nama = “);

gets(temanku.nama);

printf(“Alamat = “);

gets(temanku.alamat);

printf(“Hobi = “);

gets(temanku.hobi);

printf(“Umur = “);

scanf(“%d”, &temanku.umur);

printf(“========================\n”);

printf(“=== Cetak data teman ===\n”);

printf(“Nama : %s\n”, temanku.nama);

printf(“Alamat : %s\n”, temanku.alamat);

printf(“Hobi : %s\n”, temanku.hobi);

printf(“Umur : %d\n”, temanku.umur);

printf(“========================\n”);

return 0;

}

Hasil compile :

1

Leave a Reply

Your email address will not be published. Required fields are marked *