Program Array Struct C++
#include
<stdio.h>
#include
<conio.h>
#include
<string.h>
typedef
struct MhsUKSW
{
char NIM[10];
char
Nama[21];
int
NilaiTgs,NilaiKuis,NilaiTTS,NilaiTAS; //struct
mahasiswa
float
NilaiAkhir;
char
nilaiHuruf;
};
main()
{
MhsUKSW
mhs[max]; // array struct
int
i;
for(i=0;i<max;i++)
{
printf("=======================================");
printf("\nMasukkan
Data Mahasiswa FTI UKSW MK ASD Ke %i\n",i+1);
printf("=======================================\n");
printf("NIM :
");fflush(stdin);gets(mhs[i].NIM);
printf("NAMA :
");fflush(stdin);gets(mhs[i].Nama);
printf("Nilai
Tugas : ");scanf("%d",&mhs[i].NilaiTgs);
printf("Nilai
Kuis :
");scanf("%d",&mhs[i].NilaiKuis);
printf("Nilai
TTS :
");scanf("%d",&mhs[i].NilaiTTS);
printf("Nilai
TAS :
");scanf("%d",&mhs[i].NilaiTAS);
mhs[i].NilaiAkhir=
0.1*mhs[i].NilaiTgs+
0.2*mhs[i].NilaiKuis+
0.3*mhs[i].NilaiTTS+
0.4*mhs[i].NilaiTAS;
if(mhs[i].NilaiAkhir>=85)
mhs[i].nilaiHuruf='A';
else
if(mhs[i].NilaiAkhir>=70)
mhs[i].nilaiHuruf='B';
else
if(mhs[i].NilaiAkhir>=55)
mhs[i].nilaiHuruf='C';
//struct dalam struct
else
if(mhs[i].NilaiAkhir>=40)
mhs[i].nilaiHuruf='D';
else
if(mhs[i].NilaiAkhir>=0)
mhs[i].nilaiHuruf='E';
};
printf("\n");
printf("Data
Mahasiswa FTI UKSW MK ASD yang telah dimasukan adalah : \n");
printf("===============================================================================\n");
printf("| NIM
| NAMA | Tugas | Kuis | TTS | TAS | Nilai Akhir |
NilaiHuruf |\n");
printf("===============================================================================\n");
for(i=0;i<max;i++)
{
printf("|
%10s | %5s | %-4i | %3i | %3i | %3i | %11f | %5c |\n",
mhs[i].NIM,mhs[i].Nama,mhs[i].NilaiTgs,mhs[i].NilaiKuis,
mhs[i].NilaiTTS,mhs[i].NilaiTAS,mhs[i].NilaiAkhir,mhs[i].nilaiHuruf);
}
printf("================================================================================\n");
getch();
return
0;
}
Keterangan Coding :
Fflush(stdin)
berfungsi untuk menghapus (flush) isi dari input buffer. Biasanya ketika kita
menginput sesuatu input buffer akan terisi, jika kita menginput lagi, maka kita
tidak bisa karena input buffer sudah penuh dari input sebelumnya. Salah satu cara menginputnya berupa scanf,
gets, getch dan lain-lain.
Print Screen :
0 komentar:
Posting Komentar