#include <stdio.h>
#include <conio.h>
#include <math.h>
struct NGAY
{
int ng,th,n;
};
struct SINHVIEN
{
char MASV[10] , HOSV[30] , TENSV [10];
struct NGAY NGS;
char GTINH [5];
float dtoan , dly , dhoa , dtb;
};
typedef struct SINHVIEN SVIEN;
SVIEN NHAP1PT ();
void IN1PT (SVIEN hs);
void NHAPDS (SVIEN hs [] , int n);
void XUATDS (SVIEN hs [] , int n);
SVIEN NHAP1PT ()
{
SVIEN sv ;
float x,y,z;
printf("\n\t NHAP MA SV : ");
fflush(stdin);
gets (sv.MASV);
printf("\n\t NHAP HO SV : ");
gets (sv.HOSV);
printf("\n\t NHAP TEN SV : ");
gets (sv.TENSV);
printf("\n\t NHAP GIOI TINH SV : ");
gets (sv.GTINH);
printf("\n\t NHAP NGAY SINH : " );
scanf("%d%d%d" , &sv.NGS.ng ,&sv.NGS.th ,&sv.NGS.n);
printf("\n\t NHAP DIEM TOAN : ");
scanf("%f" , &x);
sv.dtoan = x ;
printf("\n\t NHAP DIEM LY : ");
scanf("%f" , &y);
sv.dly = y ;
printf("\n\t NHAP DIEM HOA : ");
scanf("%f" , &z);
sv.dhoa = z ;
sv.dtb = (sv.dtoan * 2 + sv.dly + sv.dhoa) / 4;
return sv;
}
void IN1PT (SVIEN sv )
{
printf("\n\t MA SV : %s HO VA TEN SV : %s %s " , sv.MASV , sv.HOSV , sv.TENSV );
printf("\n\t GIOI TINH SV : %s " , sv.GTINH );
printf("\n\t NGAY SINH : %d - %d -%d" ,sv.NGS.ng ,sv.NGS.th ,sv.NGS.n);
printf("\n\t DIEM MON HOC : \n\t TOAN : %f \t LY : %f \t HOA : %f " ,sv.dtoan ,sv.dly , sv.dhoa);
printf("\n\t DIEM TRUNG BINH : %f" , sv.dtb);
}
void NHAPDS (SVIEN sv[] ,int n)
{
for (int i = 0 ; i < n ; i++)
{
printf("\n\t NHAP NOI DUNG SV THU %d" , i+1);
sv[i] = NHAP1PT();
}
}
void XUATDS (SVIEN sv[] , int n)
{
for (int i=0; i<n; i++)
{
printf("\n\t THONG TIN SV THU %d: \n" , i + 1);
IN1PT(sv[i]);
}
}
void main()
{
SVIEN sv[20] ;
int n, c;
char ch;
clrscr();
do
{
clrscr();
printf("\n\t CHUONG TRINH CAU TRUC SINH VIEN ! ");
printf("\n\t 1 : NHAP NOI DUNG CAC PHAN TU ");
printf("\n\t 2 : XUAT DANH SACH ");
printf("\n\t 0 : THOAT KHOI CHUONG TRINH !");
printf("\n\t CHON CHUC NANG: ");
scanf("%d", &c);
switch (c)
{
case 1:
{
printf("\n\t NHAP SO PHAN TU: ");
scanf("%d", &n);
printf("\n\n\t NHAP NOI DUNG CAC PHAN TU !");
NHAPDS(sv, n);
break;
}
case 2:
{
printf("\n\n\t XUAT DANH SACH !");
XUATDS(sv,n);
}
}
printf("\n\t BAN CO MUON TIEP TUC KHONG ? (c/k)");
ch = getch();
}while ((ch=='c')||(ch=='C'));
getch();
}