Structure digunakan untuk mengelompokan sejumlah data yang mempunyai tipe data yang berbeda. Variabel-variabel yang membentuk sebuah struktur dinamakan elemen struktur. Struktur sama seperti Record di dalam Bahasa Pemrograman Pascal
1. Deklarasi Structure
Contoh struct
Deklarasi {
char nim[5];
char nama[15];
float nilai;
} mahasiswa;
Contoh-1 /* ---------------------------- */
/* Program Penggunaan structure */
/* Nama File : struct1.cpp */
/* ---------------------------- */
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
struct
{
char nim[5];
char nama[15];
float nilai;
} mahasiswa;
clrscr();
cout<<"masukan NIM = ";
cin>>mahasiswa.nim;
cout<<"masukan Nama = ";
cin>>mahasiswa.nama;
cout<<"masukan Nilai Akhir = ";
cin>>mahasiswa.nilai;
cout<<"\n\nData Yang di Inputkan adalah : \n\n";
cout<<"NIM = "<<mahasiswa.nim<<endl;
cout<<"Nama = "<<mahasiswa.nama<<endl;
cout<<"Nilai Akhir = "<<mahasiswa.nilai<<endl;
getch();
}
Output yang akan dihasilkan, dari program contoh-1 diatas adalah :

2. Nested Structure
Nested Structure merupakan suatu Structure dapat digunakan didalam structure yang lainnya.
Hal seperti ini anda dapat lihat pada program berikut ini :
Contoh-2 /* ----------------------------------- */
/* Program Penggunaan Nested structure */
/* Nama File : struct2.cpp */
/* ----------------------------------- */
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
struct dtmhs
{
char nim[9];
char nama[15];
};
struct dtnil
{
float nil1;
float nil2;
};
struct
{
struct dtmhs mhs;
struct dtnil nil;
} nilai;
clrscr();
//-> masukan data
cout<<"masukan NIM = "; cin>>nilai.mhs.nim;
cout<<"masukan Nama = "; cin>>nilai.mhs.nama;
cout<<"masukan Nilai UTS = "; cin>>nilai.nil.nil1;
cout<<"masukan Nilai UAS = "; cin>>nilai.nil.nil2;
cout<<endl;
//-> menampilkan hasil masukan
cout<<"masukan NIM = "<<nilai.mhs.nim<<endl;
cout<<"masukan Nama = "<<nilai.mhs.nama<<endl;
cout<<"masukan Nilai UTS = "<<nilai.nil.nil1<<endl;
cout<<"masukan Nilai UAS = "<<nilai.nil.nil2<<endl;
cout<<endl;
getch();
return(0);
}
Output yang akan dihasilkan, dari program contoh-2 diatas adalah :

3. Structure dengan Array
Penggunaan Array sering dikaitkan dengan Structure, sehingga membentuk Array dari
Structure. Berikut bentuk deklarasi array structure :
Contoh-3 /* -------------------------------------------- */
/* Program Penggunaan array structure */
/* Nama File : struct3.cpp */
/* -------------------------------------------- */
#include
cout<<"masukan Nama = "; cin>>mhs[i].nama;
cout<<"masukan Nilai Akhir = "; cin>>mhs[i].nilai;
}
for(i=0; i<2; i++)
{
cout<<"Data Ke - "<<j++<<endl;
cout<<"NIM = "<<mhs[i].nim<<endl;
cout<<"Nama = "<<mhs[i].nama<<endl;
cout<<"Nilai Akhir = "<<mhs[i].nilai<<endl;
cout<<endl;
}
getch();
}
Output yang akan dihasilkan, dari program contoh-3 diatas adalah :
4. Structure dengan Function
Suatu elemen-elemen dari suatu Structure dapat dikirimkan ke dalam suatu function dengan
cara yang sama seperti mengirimkan suatu variabel sederhana kedalam suatu function.
Berikut contoh sederhana yang anda dapat lihat pada contoh program berikut
Contoh-4 /* ------------------------------------------------------ */
/* Program Penggunaan structure pada function */
/* Nama File : struct4.cpp */
/* ------------------------------------------------------ */
#include<stdio.h>
struct
{
char nim[5];
char nama[15];
float nilai;
} mhs[5];
clrscr();
for(i=0; i<2; i++)
{
cout<<"Data Ke - "<<j++<<endl;
cout<<"masukan NIM = "; cin>>mhs[i].nim;
cout<<"masukan Nama = "; cin>>mhs[i].nama;
cout<<"masukan Nilai Akhir = "; cin>>mhs[i].nilai;
cout<<endl;
}
clrscr();
for(i=0; i<2; i++)
{
cout<<"Data Ke - "<<k++<<endl;
cout<<"NIM = "<<mhs[i].nim<<endl;
cout<<"Nama = "<<mhs[i].nama<<endl;
cout<<"Nilai Akhir = "<<mhs[i].nilai<<endl;
cout<<"Keterangan yang didapat = ";
cout<<ket(mhs[i].nilai)<<endl;
cout<<endl;
}
getch();
}
char ket(float n)
{
if(n > 65)
return 'L';
else
return 'G';
}
Output yang akan dihasilkan, dari program contoh-3 diatas adalah :
Referensi
Frieyadie. (2007). Structure. In Frieyadi, Pemrograman
C++ dengan Borland C++ 5.02 (p. 155). Jakarta: BSI.
Tidak ada komentar:
Posting Komentar