Penggunaan Struct Pada Bahasa C

Teori Dasar

Pada tahap pembelajaran bahasa C telah dipelajari mengenai tipe data dan variabe. Pada tahap awa setiap variable hanya mewakili 1 tipe data. Penggunaan struct memungkinkan 1 variabel memiliki anggota yang terdiri dari beberapa variabel dan tipe data. Struct membebaskan pemrogram untuk menyimpan data yang kompleks, data yang disimpan tidak harus bertipe data yang sama dengan data lainnya.

Pendeklarasian

Untuk mendeklarasikan sebuah struct, dapat dipilih salah satu dari dua metode berikut ini. Pendeklarasian struct yang pertama (bentuk umum).

struct namaStruct { tipeData namaVariabel; };

Contoh kode pendeklarasian struct:

struct mahasiswa {
 char nim[25];
 char nama[25];
 int usia;
};

Sedangkan untuk pendeklarasian cara yang kedua, dapat digunakan fasilitas typedef untuk memberikan nama samaran (alias name) kepada struct yang ingin dideklarasikan dan digunakan nantinya.

typedef struct { tipeData namaVariabel; }namaStruct;

Contoh kode pendeklarasian struct:

typedef struct {
 char nim[25];
 char nama[25];
 int usia;
}mahasiswa;

Contoh Penggunaan

Berikut ini merupakan contoh penggunaan struct :

#include <stdio.h>

struct mahasiswa {
 char nim[25];
 char nama[25];
 int usia;
};

typedef struct {
 char namamk[25];
 int semester;
 int sks;
}mataKuliah;

void main(){
 struct mahasiswa mhs1 = {"2016823", "Budi Wahana",18};
 mataKuliah mk1 = {"Struktur Data", 2, 3};

 //tampilkan data Mahasiswa
 printf("NIM : %s\n",mhs1.nim);
 printf("Nama : %s\n",mhs1.nama);
 printf("Usia : %d\n",mhs1.usia);

 //tampilkan data Mata Kuliah
 printf("Mata Kuliah : %s\n",mk1.namamk);
 printf("Semester : %d\n",mk1.semester);
 printf("SKS : %d\n",mk1.sks);
}

Pada contoh ini akan diperlihatkan struct bersarang, dalam artian didalam struct terdapat struct. Berikut ini contohnya:

#include <stdio.h>

struct nilai{
 char mataKuliah[25];
 int nilaiMk;
};

struct mahasiswa {
 char nim[25];
 char nama[25];
 struct nilai dataNilai;
};

void main(){

 struct mahasiswa mhs1 = {"2016823", "Budi Wahono",{"Struktur Data",90}};

 printf("NIM : %s\n",mhs1.nim);
 printf("Nama : %s\n",mhs1.nama);

 printf("Mata Kuliah : %s\n",mhs1.dataNilai.mataKuliah);
 printf("Nilai : %d\n",mhs1.dataNilai.nilaiMk);

}

Pada contoh ini akan dilakukan pemberian nilai melalui keyboard terhadap struct yang sudah dideklarasikan.

#include <stdio.h>
#include <string.h>

struct koleksi {
 char judul[50];
 char pengarang[50];
 char jenis[100];
 int buku_id;
};

void main( ) {

 struct koleksi buku1;
 struct koleksi buku2;

 printf("Buku 1 \n");
 printf("Judul Buku : ");
 scanf("%[^\n]%*c", buku1.judul);
 printf("Nama Pengarang : ");
 scanf("%[^\n]%*c", buku1.pengarang);
 printf("Jenis Buku : ");
 scanf("%[^\n]%*c", buku1.jenis);
 buku1.buku_id = 6495407;

 printf("Buku 2 \n");
 printf("Judul Buku : ");
 scanf("%[^\n]%*c", buku2.judul);
 printf("Nama Pengarang : ");
 scanf("%[^\n]%*c", buku2.pengarang);
 printf("Jenis Buku : ");
 scanf("%[^\n]%*c", buku2.jenis);
 buku2.buku_id = 6495700;

 printf("\nData Buku \n");
 printf( "buku 1 judul : %s\n", buku1.judul);
 printf( "buku 1 pengarang : %s\n", buku1.pengarang);
 printf( "buku 1 jenis : %s\n", buku1.jenis);
 printf( "buku 1 buku_id : %d\n", buku1.buku_id);

 printf( "buku 2 judul : %s\n", buku2.judul);
 printf( "buku 2 pengarang : %s\n", buku2.pengarang);
 printf( "buku 2 jenis : %s\n", buku2.jenis);
 printf( "buku 2 buku_id : %d\n", buku2.buku_id);

}

Demikianlah penjelasan singkat mengenai struct pada bahasa C, silahkan eksplorasi lebih lanjut. Pelajari Larik (Array) 1 Dimensi Pada Bahasa C untuk materi berikutnya.

Bila ada pertanyaan, kritik dan saran silahkan ditulis dibagian bawah.

1 Comment on Penggunaan Struct Pada Bahasa C

Leave a Reply

Your email address will not be published.


*


Block AdBlock - Powered by Admiral