#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 100
struct DATE
{
unsigned char ngay;
unsigned char thang;
int nam;
};
typedef struct ttsinhvien
{
char ma[6];
char hoten[31];
char gioitinh;
struct DATE ntn;
char lop[8];
float diemtrungbinh;
}sv;
void nhapsl(int &n)
{
do
{
printf("nhap so luong sinh vien: ");
scanf("%d",&n);
if(n<0 || n>100)
{
printf("sai nhap lai");
}
}while(n<0 || n>100);
}
void nhapntn(DATE &ntn)
{
printf("\nnhap ngay: ");
scanf("%u",&ntn.ngay);
printf("nhap thang: ");
scanf("%u",&ntn.thang);
printf("nhap nam: ");
scanf("%d",&ntn.nam);
}
void xuatntn(DATE ntn)
{
printf("ngay thang nam sinh: %u/%u/%d\n",ntn.ngay,ntn.thang,ntn.nam);
}
void nhap1sv(sv &x)
{
fflush(stdin);
printf("nhap ma sinh vien: ");
scanf("%s",&x.ma);
printf("nhap ho ten: ");
fflush(stdin);
gets(x.hoten);
do
{
printf("nhap gioi tinh x=nu, y=nam: ");
x.gioitinh=getche();
}while(x.gioitinh!='x' && x.gioitinh!='y');
nhapntn(x.ntn);
printf("nhap lop: ");
scanf("%s",&x.lop);
printf("nhap diem trung binh: ");
scanf("%f",&x.diemtrungbinh);
}
void xuat1sv(sv x)
{
printf("ma so sinh vien: %s\n",x.ma);
printf("ten sinh vien: %s\n",x.hoten);
if(x.gioitinh=='x')
{
printf("gioi tinh: nu\n");
}
else{
printf("gioi tinh: nam\n");
}
xuatntn(x.ntn);
printf("lop: %s\n",x.lop);
printf("diem trung binh: %0.2f",x.diemtrungbinh);
}
void nhapdssv(sv a[], int n)
{
for(int i=0;i<n;i++)
{
printf("\n------------------------\n");
printf("nhap sinh vien thu: %d\n",i+1);
nhap1sv(a[i]);
}
}
void xuatdssv(sv a[], int n)
{
for(int i=0;i<n;i++)
{
printf("\n------------------------\n");
printf("xuat sinh vien thu: %d\n",i+1);
xuat1sv(a[i]);
}
}
void diemlonhonnam(sv a[], int n)
{
for(int i=1;i<n;i++)
{
if(a[i].diemtrungbinh>5)
{
xuat1sv(a[i]);
}
}
}
int main()
{
sv a[MAX];
int x;
int n;
nhapsl(n);
nhapdssv(a,n);
xuatdssv(a,n);
diemlonhonnam(a,n);
return 0;
}
dạ cho e hỏi sai chỗ nào ạ