Tambah dan Tampil DAT file dengan Struct dalam Bahasa C

Wah lama banget ga posting di blog campur aduk ini.. hooh. Ga ada ide gan.. sumpeh dah mati ide ni, ga tau mau nulis apaan. Tapi liat file-file tugas kuliah di komputer jadi ada sesuatu yang bisa dibagi n dishare untuk temen2 semua.

Yha ini adalah matakuliah Algoritma dan Struktur Data 2 di kampus ane. Mata Kuliah semester 3 gan, jadi masi newbie banget lah.. Jdi buat mastah2 yang kebetulan mampir, mending di skip aja deh, takut malu ane nya.. hehe

Oke, buat temen2 yang bukan mastah boleh yuk kita lanjut 😀

Struct merupakan tipe variabel yang merupakan gabungan dari beberapa variabel yang memiliki tipe berbeda-beda. Inilah yang membedakan array dan struct. Kalo array kan tipenya sama. Pusing yah..? haha santai aja. Struct juga punya atribut next dan prev, oks kali ini kita ga bahas dulu yaa :D.

Kita fokus di operasi file dan cuma Add n View. Data yang dipake sebagai sample yaitu data Mahasiswa (NIM, Nama, dan Jurusan). Editor yang ane pake yaitu Dev-C. Pada dasarnya ga ada yang beda sma editor lain, cuma kadang beda fungsi library aja. 🙂

Berikut kodenya:

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

void menu(void);
void input(void);
void tampil(void);

char pilih;
FILE *file_struct;

struct{
char nim[10],nama[20],prodi[20];
}mhs;

main(){
do{
menu();
pilih = getch(); printf("%c",pilih);
if (pilih == '1')
input();
if (pilih == '2')
tampil();
menu();
}while (pilih != '3');
exit(1);
}

void menu(void){
system("cls"); //ganti dengan clrscr(); kalo pake turbo c
printf("Menu:\n1. Input Data\n2. Tampil Data\n3. Keluar Program\n\n");
printf("Masukkan Pilihan Anda: ");
}

void input(void){
printf("\n\n");
printf("Masukkan NIM   : "); scanf("%s",&mhs.nim); fflush(stdin);
printf("Masukkan Nama  : "); scanf("%s",&mhs.nama); fflush(stdin);
printf("Masukkan Prodi : "); scanf("%s",&mhs.prodi); fflush(stdin);
file_struct = fopen("mhs.dat","a");
fwrite(&mhs,sizeof(mhs),1,file_struct);
fclose(file_struct);
printf("\nData Tersimpan.\nTekan [Enter] untuk melanjutkan..");
getch();
}

void tampil(void){
printf("\n\n");
file_struct = fopen("mhs.dat","rb");
printf("%-10s %-20s %-20s \n","NIM","Nama","Prodi");
while(fread(&mhs,sizeof(mhs),1,file_struct)==1){
printf("%-10s %-20s %-20s \n",mhs.nim,mhs.nama,mhs.prodi);
}
fclose(file_struct);
printf("\nTekan [Enter] untuk melanjutkan..");
getch();
}

[iklan]

Sedikit penjelsan script:

struct{
char nim[10],nama[20],prodi[20];
}mhs;

nah ini inisialisai struct nya dengan nama mhs yang isinya grup dari variabel nim nama dan prodi

main(){
do{
menu();
pilih = getch(); printf("%c",pilih);
if (pilih == '1')
input();
if (pilih == '2')
tampil();
menu();
}while (pilih != '3');
exit(1);
}

ini syntax yang pertama kali dijalankan. pertama memanggil fungsi menu()

void menu(void){
system("cls"); //ganti dengan clrscr(); kalo pake turbo c
printf("Menu:\n1. Input Data\n2. Tampil Data\n3. Keluar Program\n\n");
printf("Masukkan Pilihan Anda: ");
}

yaitu menampilkan pilihan menu kemudian hasil pilihan menu user disimpan di variabel pilih yang kemudian diseleksi untuk memanggil fungsinya.

wah jadi panjang nih ceritanya klo d jelasin semua, PM aja deh yha via Contact or YM atow komen klo ada script yang kurang jelas.hehehe

intinya sie ada di script berikut:

file_struct = fopen("mhs.dat","a");
fwrite(&mhs,sizeof(mhs),1,file_struct);
fclose(file_struct);

fungsinya untuk membuka file mhs.dat dengan mode ‘a’ (mode untuk membuka dan menulis). Baru pada fungsi fwrite untuk menulis ke file isi dari struct mhs. dan fclose untuk menutup koneksi ke file.

Download Source Code Tambah dan Tampil DAT file dengan Struct dalam Bahasa C

Post A Reply