Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
hàm tính điểm trung bình chạy sai kết quả cần trợ giúp ạ
#include <stdio.h>
#include<math.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>
#define max 100
struct sinhvien{
char hoten[100];
char mssv[15];
float tk,gk,ck,th,tb;
} ;
void nhap_1sv(sinhvien &a);
void xuat_1sv(sinhvien a);
void nhap_mangsv(sinhvien a[],int n);
float diem_tb(sinhvien a[],int n);
int tim_sv( sinhvien a[],int n,char ma[]);
int main(){
sinhvien a[100];
int n;
char ma[15];
//nhap_1sv(sinhvien);
nhap_mangsv(a,n);
diem_tb(a, n);
tim_sv(a, n, ma);
return 0;
}
void nhap_1sv(sinhvien &a){
printf("nhap ho ten :");
fflush(stdin);
scanf("%d",&a.hoten);
printf("nhap mssv:");
fflush(stdin);
scanf("%d",&a.mssv);
printf("nhap tk :");
fflush(stdin);
scanf("%d",&a.tk);
printf("nhap gk :");
fflush(stdin);
scanf("%d",&a.gk);
printf("nhap ck :");
fflush(stdin);
scanf("%d",&a.ck);
}
void nhap_mangsv(sinhvien a[],int n){
printf("nhap si so lop :");
scanf("%d",&n);
for(int i=0;i < n;i++)
nhap_1sv(a[i]);
}
float diem_tb(sinhvien a[],int n){
for(int i=0;i<n;i++)
a[i].tb=((2*a[i].tk+3*a[i].gk+5*a[i].ck)/10*2 +a[i].th)/3;
}
int tim_sv(sinhvien a[],int n,char ma[]){
for(int i=0;i<n;i++)
if(strcmp(a[i].mssv,ma)==0)
return i;
return -1;
}