TIPE DATA BENTUKAN Tipe data bentukan adalah suatu tipe data yang di definisikan sendiri untuk memenuhi

kebutuhan-kebutuhan program yang akan kita buat. 1. Struktur Merupakan tipe data bentukan yang menyimpan lebih dari satu variabel bertipe data yang sama maupun berbeda dan di kelompokan dalam satu nama untuk kemudian diakses oleh program. Untuk mendifinisikan sebuah struktur kedalam bahasa C kita harus menggunakan kata kunci struct yang di ikuti dengan nama struktur tersebut. Untuk lebih jelasnya berikut bentuk umum dari pendefinisian struktur dalam bahasa C struct nama_struktur { tipe_data field1; tipe_data field2; ...... }; //jangan lupa titik koma

Apabila suatu struktur sudah di deklarasikan, struktur ini dapat digunakan untuk mendefinisikan suatu variabel didalam main, contoh struct nama_struktur nama_variabel Dan untuk mengakses struktur ini dengan menggunkan tanda titik (“.”). yaitu nama variabel di ikuti tanda titik (“.”) dan selanjutnya field dari struktur yang kita buat. nama_variabel.field1 Contoh :
#include <stdio.h> #include <conio.h> struct KOORDINAT { int x; int y; }; main() { struct KOORDINAT T; printf(“menentukan koordinat T :\n”); printf(“Nilai x = ”); scanf("%d",&T.x); printf(“Nilai y = ”); scanf("%d",&T.y); printf("T(%d,%d)",T.x,T.y); getch();

S. printf("\n\n"). /*menampilkan nilai yang dikandung di dalam S*/ printf("NIM :%s\n". scanf("%s". Array dari struktur ini digunakan untuk mencatat sekumpulan data dari yang dimasukan oleh user secara berulang kali. /*menisikan nilai ke dalam S*/ printf("NIM :"). }SISWA. Dengan demikian kita tidak perlu lagi menuliskan kata kunci struct didalam main.&S. .usia).h> typedef struct{ char NIM[10]. printf("Nama :%s\n". main() { /*mendeklarasikan variabel S dengan tipe SISWA*/ SISWA S.S.h> #include <conio.h> #include <conio.&S. }  Array dari struktur Merupakan array yang setiap elemen bertipe struktur.NIM). int usia. char nama[25]. int usia. yaitu dengan cara menggunakan kata kunci typedef.}  Struktur sebagai tipe data bentukan Struktur juga bisa digunakan sebagai tipe data bentukan.NIM). printf("Nama :"). scanf("%s". Contoh : #include <stdio. scanf("%d".usia).h> typedef struct{ char NIM[10]. char nama[25].S.nama).nama). getch(). printf("usia :").&S. Contoh : #include <stdio. }SISWA. printf("Nilai :%d". main() /*mendeklarasikan variabel S dengan tipe SISWA*/ SISWA S[100].

scanf("%s". printf("\n"). printf("masuakn nama :"). }datadiri.&S[i]. char jurusan[20].&M. printf("\n\n").h> typedef struct{ int tanggal. printf("usia :"). main() { datadiri M.h> #include <conio.nama). } printf("\n\n"). scanf("%s".NIM). printf("masuakn jurusan :").NIM).int i. printf("Nama :%s\n".&S[i].i++) { printf("NIM :").nama). /*menampilkan nilai yang dikandung di dalam S*/ for(i=0.&S[i]. printf("\n"). . printf("Nilai :%d". } getch().i++) { printf("NIM :%s\n".scanf("%d".&M.nim). int nim. typedef struct{ char nama[20]. }  Struktur berisi struktur lain Struktur juga bisa berisi struktur lain didalam anggota-anggota strukturnya. scanf("%d". /*menisikan nilai ke dalam S*/ for(i=0.usia).i<n. Contoh : #include <stdio. int tahun. printf("masukan nim :" ).S[i].nama).S[i].n. tgl_lahir mhs. printf("berapa banyak data :").S[i].&M.usia). printf("Nama :"). scanf("%d". int bulan. }tgl_lahir. scanf("%s".i<n.jurusan).&n).scanf("%s".

printf(“Nilai x = ”).h> #include <conio.y.tanggal. void kali(KOORDINAT A.nama).int *hasilkali).nim).mhs. printf("nim :%d \n".int *hasilkali) { *hasilkali=A. scanf("%d".jurusan).&M.&M.M.&T. printf("tanggal lahir :%d/%d/%d \n".h_kali).mhs.y).scanf("%d".M. kali(T. printf("jurusan :%s \n". main() { KOORDINAT T. printf("hasil kali = %d”. bulan. int y. printf("masuan tahun lahir :").M.mhs. printf("masuan bulan lahir :"). }  Struktur sebagai nilai kembali Fungsi .tahun). printf(“menentukan hasil kali :\n”). getch().h> typedef struct{ int x. }  Struktur sebagai Paeameter #include <stdio. scanf("%d".scanf("%d".tanggal).M.&M.bulan). printf("nama :%s \n".M. printf(“Nilai y = ”).&h_kali).mhs.mhs.scanf("%d". getch(). printf("\n\n").tahun).M. } KOORDINAT. int h_kali.mhs.x).printf("masuan tanggal lahir :").x*A. } void kali(KOORDINAT A.&T.

KOORDINAT BuatTitik(int a. printf("T2(%d.x=a. KOORDINAT BuatTitik(int a. T2=BuatTitik(5.h> #include <conio. }KOORDINAT.%d)\n".%d)\n".y=b.9).x. printf("T3(%d.#include <stdio.T1.T2.T1.x.%d)\n". /*memasukan nilai kedalam T1.y).T2.int b). . int y.T3. main() { KOORDINAT T1. /*menampilkan nilai yang terdapat pada T1. } return temp. temp.T2. } getch().T3.T2 dan T3*/ T1=BuatTitik(3.h> typedef struct{ int x.x.T3.T2 dan T3*/ printf("T1(%d.y). /*membuat variabel temp yang bertipe KOORDINAT*/ /*memasukan nilai a kedalam x dan b ke dalam y*/ temp.y). T3=BuatTitik(7.4).int b) { KOORDINAT temp.2).