Materi 8 C++ Struktur

Download Report

Transcript Materi 8 C++ Struktur

Structure (Record)
As’ad Djamalilleil
http://kampusku.web.id
[email protected]
Deklarasi Structure
struct namaStruktur
{
tipe namaElemen1;
tipe namaElemen2;
………
………
}namaVarStruktur;
namaStruktur  identifier yang menentukan nama dari struktur yang dibuat
tipe  tipe data dari elemen struktur
namaElemen  nama dari elemen struktur
namaVarStruktur  nama dari variabel struktur yang dibuat.
namaStruktur dan namaVarStruktur bersifat opsional tetapi salah satunya harus
ada.
Contoh:
struct mahasiswa
{
char stb[7];
char nama[20];
int umur;
float ipk;
};
struct
{
int
int
int
};
mahasiswa
stb
nama
umur
ipk
tanggal
tanggal
tgl;
bln;
thn;
tgl
bln
thn
Deklarasi Variabel Struktur
namaStruktur
Contoh:
mahasiswa
namaVarStruktur;
kampus;
Atau dapat juga langsung dideklarasi
pada saat deklarasi struktur, seperti
berikut:
struct mahasiswa
{
char stb[7];
char nama[20];
int umur;
float ipk;
}kampus;
atau
struct
{
char stb[7];
char nama[20];
int umur;
float ipk;
}kampus;
struktur
Perhatikan bahwa elemen pada
variabel struktur “kampus”
sama dengan struktur
“mahasiswa”
mahasiswa
stb
nama
umur
ipk
variabel struktur
kampus
Ini dikarenakan variabel
“kampus” merupakan variabel
struktur dari struktur
“mahasiswa”
stb
nama
umur
ipk
Mengakses Elemen Variabel Struktur
namaVarStruktur.elemen
Contoh:
cin >> kampus.stb;
cin >> kampus.nama;
cin >> thnLahir;
kampus.umur = 2008 - thnLahir;
cin >> sksLulus;
kampus.ipk = sksLulus / 144.0;
cout << kampus.umur << endl << kampus.ipk;
Inisialisasi Elemen Variabel Struktur
namaStruktur namaVarStruktur =
{ nilaiElemen1,
nilaiElemen2,
………………………… };
struct namaStruktur
{
tipe namaElemen1;
tipe namaElemen2;
………
}namaVarStruktur =
{ nilaiElemen1,
nilaiElemen2,
………………………… };
Contoh:
mahasiswa kampus =
{“072123”,
“John Smith”,
21, 3.81};
atau
struct mahasiswa
{
char stb[7];
char nama[20];
int umur;
float ipk;
}kampus = {“072123”,
“John Smith”,21,3.81};
Array Structure
• Variabel struktur dapat kita deklarasikan
sebagai array sehingga dapat
menampung variabel struktur dengan
jumlah variabel lebih dari satu.
• Cara deklarasi maupun inisialisasinya
sama dengan cara kita mendeklarasi dan
menginisialisasi variabel array biasa.
Contoh deklarasi variabel array struktur yang
memiliki 3 buah elemen :
mahasiswa kampus[3];
kampus[0]
stb
nama
umur
ipk
kampus[1]
stb
nama
umur
ipk
kampus[2]
stb
nama
umur
ipk
Kita dapat mengakses setiap elemen secara
individual maupun secara kolektif dengan
menggunakan statement pengulangan seperti
halnya variabel array biasa.
Misalnya kita mau mengakses elemen nama pada
kampus[0], ipk pada kampus[1], dan umur pada
kampus[2]. Berikut adalah contoh pengaksesan
yang benar :
kampus[0]
stb
nama
umur
ipk
kampus[1]
stb
nama
umur
ipk
cin >> kampus[0].nama;
kampus[1].ipk = sksLulus / 144.0;
kampus[2].umur = 2008 – thnLahir;
kampus[2]
stb
nama
umur
ipk
Struktur Dalam Struktur
• Di dalam sebuah deklarasi struktur, elemen
dari struktur tersebut dapat kita deklarasikan
sebagai struktur lain maupun variabel
struktur, sehingga akan menciptakan sebuah
struktur di dalam struktur (struktur
bersarang).
• Berikut adalah contoh deklarasi struktur
bersarang :
struct alamat
{
char jalan[20];
int nomor;
};
struct mahasiswa{
{
char stb[7];
char nama[20];
alamat rumah;
int umur;
};
atau
struct mahasiswa
{
char stb[7];
char nama[20];
struct alamat
{
char jalan[20];
int nomor;
}rumah;
int umur;
};
atau
struct mahasiswa
{
char stb[7];
char nama[20];
struct
{
char jalan[20];
int nomor;
}rumah;
int umur;
};
Deklarasikan variabel struktur seperti biasa.
mahasiswa kampus;
Berikut ini adalah contoh pengaksesan elemen
variabel struktur “kampus”.
cin >> kampus.stb;
cout << kampus.nama;
cin >> kampus.rumah.jalan;
kampus.rumah.nomor = 58;
perhatikan cara
penulisan
elemennya
kampus.umur = 2008 - thnLahir;