mọi người giúp sửa lỗi với mk in mà k ra tỷ lệ
#include<conio.h>
#include<math.h>
#include<string.h>
struct sinhvien
{
char hoten[30];
char quequan[30];
int ns;
float dt,dv,da,ut;
};
void nhap(struct sinhvien a[],int n)
{
int i;
for(i=1;i<=n;i++)
{
printf("\nnhap du lieu sinh vien thu %d:",i);
fflush(stdin);
printf("\nho va ten:");
gets(a[i].hoten);
printf("\nque quan:");
gets(a[i].quequan);
printf("\nnam sinh:");
scanf("%d",&a[i].ns);
printf("\ndiem toan,diem van, diem anh, diem uu tien lan luot la:");
scanf("%f%f%f%f",&a[i].dt,&a[i].dv,&a[i].da,&a[i].ut);}}
void tinh(struct sinhvien a[],int n)
{
int i;
for(i=1;i<=n;i++)
{
float dtb=(a[i].dt+a[i].dv+a[i].da)/3;
float dt=a[i].dt+a[i].dv+a[i].da+a[i].ut;
}
}
// dếm sinh vien có diem trung binh tu 7.0 tro nên va khong co mon nao duoi 3
void dem(struct sinhvien a[],int n)
{printf("nhap so sinh vien:");
scanf("%d",&n);
int x=0;
int i;
for(i=1;i<=n;i++)
{
float dtb=(a[i].dt+a[i].dv+a[i].da)/3;
float dt=a[i].dt+a[i].dv+a[i].da+a[i].ut;
if(dtb>=7.0)
{
if(a[i].dt>=3)
{
if(a[i].dv>=3)
{
if(a[i].da>=3)
x=x+1;
printf("in %d",x);
}
}
}
//printf("\nso sinh vien co diem trung binh tu 7 tro len va khong co mon nao duoi 3 la:%d",x);
}printf("\nso sinh vien co diem trung binh tu 7 tro len va khong co mon nao duoi 3 la:%d",x);}
void tyle(struct sinhvien a[],int n)
{
// b1:đếm số sinh viên có tổng điểm >24
//b2:đc bao nhiêu chia cho n
int i;
int x=0;
for(i=1;i<=n;i++)
{
float dtb=(a[i].dt+a[i].dv+a[i].da)/3;
float dt=a[i].dt+a[i].dv+a[i].da+a[i].ut;
if(dt>24)
{
x=x+1;
}
}
printf("in %d",x);
printf("ty le = %f",x/n);}
main()
{
int n,i;
printf("so sinh vien la:");
scanf("%d",&n);
struct sinhvien b[20];
nhap(b,n);
dem(b,n);
tyle(b,n);}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?