STRUCT Structure (struct) adalah kumpulan elemen data yang digabungkan menjadi satu kesatuan atau bisa diartikan koleksi referensi variabel yang dikemas ke dalam satu nama. Structure merupakan cara yang nyaman untuk menjaga informasi. Biasanya penamaan antar variabel di dalam struct saling berkaitan dan mendukung satu gagasan. Struktur mempunyai persamaan dengan array yaitu pengalokasian memori untuk elemenelemennya sudah di tentukan sebelum program dijalankan. Perbedaannya, Array : tipe data dari elemen-elennya harus sama dan elemen-elemennya diakses menggunakan indeks Struktur : tipe data dari elemen-elennya tidak harus sama dan elemen-elemennya diakses menggunakan identifier atau nama variabel. Contoh deklarasi structure: struct data { char nim[10]; char nama[30]; char kelas[6]; float nilai; };
Apabila terdapat field-field yang mempunyai tipe yang sama maka bisa dituliskan sebagai berikut : struct data { char nim[10],char nama[30],char kelas[6]; float nilai; };
Contoh1: Program menghitung volume sebuah balok #include #include main(){ struct { int panjang, lebar,tinggi,volume; } balok; cout<<"panjang="; cin>>balok.panjang; cout<<"lebar="; cin>>balok.lebar; cout<<"tinggi="; cin>>balok.tinggi; balok.volume= balok.panjang * balok.lebar * balok.tinggi; cout<<"Volume="<< balok.volume; getch(); }
Tampilan program: Panjang=10 Lebar=10 Tinggi=5 Volume=500
Contoh2: // Program tentang data karyawan #include #include #include <stdio.h> int main() { int C,n; struct karyawan { long NIP; char Nama[25]; char Alamat[70]; char Status[10]; int Gaji; char Departemen[20]; }; karyawan A[3]; cout<<"Jumlah data Karyawan = ";cin>>n; //input data karyawan for (C=1; C<=n; C++) { cout<<"NIP = ";cin>>A[C].NIP; cout<<"Nama = ";gets(A[C].Nama);//cin>>A[C].nama; cout<<"Alamat = ";cin>>A[C].Alamat; cout<<"Status = ";cin>>A[C].Status; cout<<"Gaji = ";cin>>A[C].Gaji; cout<<"Departemen = ";cin>>A[C].Departemen; cout<<"\n"; } //menampilkan data karyawan cout<<"==========================================="<<endl; cout<
cout<<"Data Karyawan ke "<
struct data_pembuatan { int tgl,bulan,thn; }; struct data_motor { char merk[20]; char warna[10]; }; struct harga { int harga struct data_pembuatan; struct data_motor; };
Mengisi Variabel di Struct Jika struct dikemas ke dalam array maka kita bisa mengisikan semua variabel di dalam struct secara langsung, contoh : struct data { char nim[10]; char nama[30]; char kelas[6]; float nilai; } mahasiswa[] = { { "07.11.1111", "Bejo", "S1TI2J", 70 }, { "07.11.2222", "Farah", "S1TI2J", 85 }, { NULL, NULL, NULL, 0 }
};
Mengakses Elemen Struktur Contoh Program mengakses elemen struktur #include #include main(){ struct data_motor { char merk[20]; char warna[10]; int thn_buat; }; struct { int harga; struct data_motor data ; } info={ 10000000,"Honda Revo","Hitam",2007}; cout<<"merk motor\t:"<
Tampilan program: Merk motor : Honda Revo Warna : Hitam Thn pembuatan:2007 Harga : 10000000
Latihan: Buatlah program diatas supaya pemasukan datanya diinput dari keyboard dan tampilkan datanya!