Code:
#include "stdio.h"
#include "conio.h"
#include "string.h"
typedef struct NgayThang{
unsigned char Ngay;
unsigned char Thang;
unsigned int Nam;
};
typedef struct SinhVien{
char MSSV[10];
char HoTen[40];
NgayThang NgaySinh;
int Phai;
char DiaChi[40];
};
//nhap sinh vien
SinhVien Nhap(){
SinhVien sV;
printf("\tMSSV: ");
gets(sV.MSSV);
printf("\tHo ten: ");
gets(sV.HoTen);
printf("\tNgay sinh: ");
scanf("%d",&sV.NgaySinh.Ngay);
printf("\tThang: ");
scanf("%d",&sV.NgaySinh.Thang);
printf("\tNam sinh: ");
scanf("%d",&sV.NgaySinh.Nam);
printf("\tGioi tinh (0:Nu,1:Nam): ");
scanf("%d",&sV.Phai);
flushall();
printf("\tDia chi:");
gets(sV.DiaChi);
return sV;
}
//nhap n sinh vien
SinhVien * Nhap(unsigned int n) {
SinhVien *temp = new SinhVien[n];
for(int i = 0; i<n; i++)
{
printf("Nhap sinh vien thu %d\n",i+1);
temp[i] = Nhap();
}
return temp;
}
//xuat 1 sinh vien
void Xuat(SinhVien sv) {
printf("%s", sv.MSSV);
printf("\t%s",sv.HoTen);
if(sv.Phai == 1)
printf("\tNam");
else
printf("\tNu");
printf("\t%d-%d-%d",sv.NgaySinh.Ngay,sv.NgaySinh.Thang,sv.NgaySinh.Nam);
printf("\t%s\n",sv.DiaChi);
}
//xuat n sinh vien ra man hinh
void Xuat(SinhVien *sv, unsigned int n) {
printf("\nMSSV\tHo ten\tNgay sinh\tPhai\tDia Chi\n");
for(int i =0; i<n; i++)
Xuat(sv[i]);
}
//chuong trinh chinh
void main() {
clrscr();
unsigned int n;
SinhVien *sv;
printf("Nhap vao so sinh vien:");
scanf("%d",&n);
sv = Nhap(n);
SinhVien *sv1;
sv1 = sv;
Xuat(sv1,n);
getch();
}