Memahami Istilah Structure dalam Structure di C++

komputerdia.com - Perlu kalian ketahui bahwa suatu structure juga bisa mengandung suatu structure yang lain, artinya field-field didalam suatu structure merupakan suatu structure juga. Misalnya, biodata mahasiswa yang terdiri dari NIM, Nama, Alamat, dan Tanggal Lahir. Maka Alamat disini sudah terdiri dari Nama Jalan, Kota, serta Kode Pos daerah, demikian juga dengan Tanggal Lahir yang sudah mencakup Tanggal, Bulan dan Tahun.

Maka dengan demikian structure dibgi menjadi 3 bagian, seperti yang terdapat pada penjelasan dibawah ini.
Baca Juga :



Memahami Istilah Structure dalam Structure di C++

Struct Tinggal
{
char Jalan [40];
char Kota [15];
char Pos [5];
};

struct Tgl_Lahir
{
int Tanggal;
int Bulan;
int Tahun;

struct Mahasiswa
{
char Nim [9];
chr Nama [25];
Tinggal Alamat;
Tgl_Lahir Lahir;
};

kemudian deklarasikan suatu variabel struktur yang bertipe structur Mahasiswa, seperti :
Mahasiswa Mhs;

Perlu kalian ingat jika struktur dengan field bertipe struktur yang lain, maka struktur tersebut harus berada diatas struktur yang menggunakannya. Misalnya, silahkan kalian perhatian ketiga struktur diatas, yang memperlihatkan struktur Mahasiswa letaknya haruslah berada dibawah struktur Tinggal dan Tgl_Lahir, sedangkan struktur tinggal dan struktur Thl_Lahir boleh saling bertukar posisi, karena kedua struktur tersebut tidak saling terkait.

Contoh kedua kali ini dengan menggunakan ketiga struktur diatas dan dengan pembuatan program untuk membaca serta mencetak nilai dari masing-masing field

/* Program structure di dalam structure
Nama File : Latihan_2_structure */

#include<stdio.h>
#include<iostream.h>
#include<conio.h>

struct Tinggal {
char Jalan[40];
char Kota[15];
char Pos[5]
};

struct Tgl_Lahir {
int Tanggal;
int Bulan;
int Tahun;
};

struct Mahasiswa{
char Nim[9]
char Nama[25]
Tinggal Alamat;
Tgl_Lahir Lahir;
};

void main()
{
Mahasiswa Mhs;
cout<<"NIM            :"; cin.getline(Mhs.Nim,9);
cout<<"Nama           :"; cin.getline(Mhs.Nama,25);
cout<<"Alamat         :\n";
cout<<"\tJalan        :"; cin.getline(Mhs.Alamat.Jalan,40);
cout<<"\tKota         :"; cin.getline(Mhs.Alamat.Kota,15);
cout<<"\tKode Pos     :"; cin.getline(Mhs.Alamat.Pos,5);
cout<<"Tanggal Lahir  :\n";
cout<<"\tTanggal      :"; cin>>Mhs.Lahir.Tanggal;
cout<<"\tBulan        :"; cin>>Mhs.Lahir.Bulan
cout<<"\tTahun        :"; cin>>Mhs.Lahir.Tahun;

cout<<"\n\nMencetak Kembali Nilai Anggota\n\n";
cout<<"NIM            :"<<Mhs.Nim;
cout<<"\nNama         :"<<Mhs.Nama;
cout<<"nAlamat        :\n";
cout<<"\n\tJalan      : "<<Mhs.Alamat.Jalan;
cout<<\n\tKota        :"<<Mhs.Alamat.Kota;
cout<<"\n\tKode Pos   :"<<Mhs.Alamat.Pos;
cout<<"\nTanggal Lahir  :"<<Mhs.Lahir.Tanggal<<"-";
cout<<Mhs.Lahir.Bulan<<"-"<<Mhs.Lahir.Tahun;
getch();
}


.
.

Berlangganan Artikel terbaru (free):

Post a Comment