[ create a new paste ] login | about

Link: http://codepad.org/gFYHrtnW    [ raw code | output | fork ]

C, pasted on Jun 20:
#include<stdio.h>
#include<conio.h>
#include<string.h>
#define MAX 100


struct SinhVien
{
	char MaSo[20], HoTen[30];
	float DiemToan, DiemLy, DiemHoa;
};
typedef struct SinhVien SINHVIEN;


// Nguyên mấu hàm
void NhapThongTinSinhVien(SINHVIEN &);
void XuatThongTinSinhVien(SINHVIEN);
float TinhDiemTrungBinh(SINHVIEN);
char* XepLoai(SINHVIEN);

void NhapThongTinSinhVien(SINHVIEN &sv)
{
	/*fflush(stdin);
	printf("\nNhap vao ma so: ");
	gets(sv.MaSo);*/

	fflush(stdin);
	printf("\nNhap vao ho ten: ");
	gets(sv.HoTen);

	do
	{
		printf("\nNhap vao diem toan: ");
		scanf("%f",&sv.DiemToan);

		if(sv.DiemToan < 0 || sv.DiemToan > 10)
		{
			printf("\nDiem toan khong hop le. Xin kiem tra lai !");
		}
	}while(sv.DiemToan < 0 || sv.DiemToan > 10);

	do
	{
		printf("\nNhap vao diem ly: ");
		scanf("%f",&sv.DiemLy);

		if(sv.DiemLy < 0 || sv.DiemLy > 10)
		{
			printf("\nDiem ly khong hop le. Xin kiem tra lai !");
		}
	}while(sv.DiemLy < 0 || sv.DiemLy > 10);

	do
	{
		printf("\nNhap vao diem hoa: ");
		scanf("%f",&sv.DiemHoa);

		if(sv.DiemHoa < 0 || sv.DiemHoa > 10)
		{
			printf("\nDiem hoa khong hop le. Xin kiem tra lai !");
		}
	}while(sv.DiemHoa < 0 || sv.DiemHoa > 10);
}

void XuatThongTinSinhVien(SINHVIEN sv)
{
	printf("\nMaSo: %s", sv.MaSo);
	printf("\nHoTen: %s", sv.HoTen);

	printf("\nDiem Toan: %f", sv.DiemToan);
	printf("\nDiem Ly: %f", sv.DiemLy);
	printf("\nDiem Hoa: %f", sv.DiemHoa);
	printf("\nDiem Trung Binh: %f",TinhDiemTrungBinh(sv));
	printf("\nXep loai: %s",XepLoai(sv));
}

float TinhDiemTrungBinh(SINHVIEN sv)
{
	return (sv.DiemToan + sv.DiemLy + sv.DiemHoa) / 3;
}

char* XepLoai(SINHVIEN sv)
{
	float Dtb = TinhDiemTrungBinh(sv);
	
	if(Dtb < 2)
	{
		return "Kem";
	}
	if(Dtb < 5)
	{
		return "Yeu";
	}
	if(Dtb < 6)
	{
		return "Trung Binh";
	}
	if(Dtb < 7)
	{
		return "Trung Binh Kha";
	}
	if(Dtb < 8)
	{
		return "Kha";
	}
	if(Dtb < 9)
	{
		return "Gioi";
	}
	return "Xuat Sac";
}
void NhapThongTinLopHoc(SINHVIEN DanhSachSinhVien[], int &n)
{
	do
	{
		printf("\nNhap vao so luong sinh vien trong lop: ");
		scanf("%d", &n);

		if(n < 1)
		{
			printf("\nSo luong khong hop le. Xin kiem tra lai !");
		}
	}while(n < 1);

	for(int i = 0; i < n; i++)
	{
		
		printf("\n\tNhap Thong Tin Sinh Vien Thu %d",i + 1);
		int Check; // Khởi tạo ban đầu
		char mssv[20];

		do
		{
			Check = 1;
	    fflush(stdin);
	    printf("\nNhap vao ma so: ");
	    gets(mssv);
	
		for(int j = i - 1; j >= 0; j--)
		{
			if(strcmp(DanhSachSinhVien[j].MaSo, mssv) == 0) 
			{
				Check = 0; // Cập nhật lại
				break;
			}
		}
		if(Check == 0)
		{
			printf("\nMa so sinh vien da bi trung. Xin nhap lai !");
		}
		}while(Check == 0);
		strcpy(DanhSachSinhVien[i].MaSo,mssv); // Gán qua
		NhapThongTinSinhVien(DanhSachSinhVien[i]);
	}
}

void XuatThongTinLopHoc(SINHVIEN DanhSachSinhVien[], int n)
{
	printf("\nSo luong sinh vien co trong lop: %d", n);
	for(int i = 0; i < n; i++)
	{
		printf("\n\tXuat Thong Tin Sinh Vien Thu %d",i + 1);
		XuatThongTinSinhVien(DanhSachSinhVien[i]);
	}
}

int main()
{
	SINHVIEN List[MAX];
	int n;
	NhapThongTinLopHoc(List,n);
	XuatThongTinLopHoc(List,n);


	getch();
	return 0;
}


Output:
1
2
3
4
5
6
Line 17: error: conio.h: No such file or directory
Line 16: error: expected ';', ',' or ')' before '&' token
Line 21: error: expected ';', ',' or ')' before '&' token
Line 112: error: expected ';', ',' or ')' before '&' token
In function 'XuatThongTinLopHoc':
Line 160: error: 'for' loop initial declaration used outside C99 mode


Create a new paste based on this one


Comments: