TeeBe
Tổng số bài gửi : 2 Points : 4 Số lần được cảm ơn : 0 Join date : 18/03/2012
| Tiêu đề: Bài 151 trong tờ đề cương Sun Apr 22, 2012 2:29 pm | |
| Bài 151 trong đề cương ! những phần trong chú thích là của thầy thực hành ! khaibao.h - Code:
-
#include <iostream> using namespace std; #include <iomanip> #define MAX 100 struct SINHVIEN { char MSSV[10], HoTen[30]; float Toan,Ly,Hoa,DTB; int NamSinh; }; //typedef SINHVIEN DSSV[MAX]; void Nhap(SINHVIEN &sv); void Xuat(SINHVIEN sv); void NhapN(int &n); void NhapDS(SINHVIEN a[],int n); void XuatDS(SINHVIEN a[],int n); //float TimDTBCaoNhat(DSSV ds,int n); //void XuatSV_DTB_CaoNhat(DSSV ds, int n); int TimVT_SV_DTB_CaoNhat(SINHVIEN a[],int n); void HoanVi(SINHVIEN &a,SINHVIEN &b); void SapTangDTB(SINHVIEN a[],int n); void SapGiamToan(SINHVIEN a[],int n); void LietkeSVDau(SINHVIEN a[],int n); int TimVT_SV_NamSinhMin(SINHVIEN a[],int n); void Lietketheoten(SINHVIEN a[],int n, char Ten[]); //void SapxepGiamDiemToan(DSSV ds,int n);
main.cpp - Code:
-
#include "khaibao.h" void main() { SINHVIEN a[MAX]; int n; NhapN(n); NhapDS(a,n);XuatDS(a,n); int vt=TimVT_SV_DTB_CaoNhat(a,n); cout<<"\nSinh vien DTB cao nhat: "; Xuat(a[vt]);SapTangDTB(a,n); cout<<"\nDanh sach tang theo DTB: "; XuatDS(a,n); SapGiamToan(a,n); cout<<"\nDanh sach giam theo mon Toan: "; XuatDS(a,n); cout<<"\nDanh sach SV Dau: "; LietkeSVDau(a,n); vt=TimVT_SV_NamSinhMin(a,n); cout<<"\nSinh vien co tuoi lon nhat: "; Xuat(a[vt]); char Ten[9];/*flushall();*/ cout<<"\nNhap Ten: "; cin.getline(Ten,9); Lietketheoten(a,n,Ten); cout<<endl;
/*cout<<"\DS Sinh Vien co diem trung binh cao nhat"; XuatSV_DTB_CaoNhat(a,n);*/ } chuongtrinh.cpp - Code:
-
#include "khaibao.h" void Nhap(SINHVIEN &sv) { /*flushall();*/ cout<<"\nNhap MSSV: "; cin.getline(sv.MSSV,9); cout<<"\nNhap Ho Ten: "; cin.getline(sv.HoTen,9); cout<<"\nNhap Nam Sinh: "; cin>>sv.NamSinh; cout<<"\nDiem Toan: "; cin>>sv.Toan; cout<<"\nDiem Ly: "; cin>>sv.Ly; cout<<"\nDiem Hoa: "; cin>>sv.Hoa; sv.DTB=(sv.Toan+sv.Ly+sv.Hoa)/3; } void Xuat(SINHVIEN sv) { cout<<"\nMSSV: "<<sv.MSSV; cout<<"\nHo Ten: "<<sv.HoTen; cout<<"\nNam Sinh: "<<sv.NamSinh; cout<<"\nDiem Toan: "<<sv.Toan; cout<<"\nDiem Ly: "<<sv.Ly; cout<<"\nDiem Hoa: "<<sv.Hoa; cout<<"\nDiem Trung Binh: "<<sv.DTB; } void NhapN(int &n) { do { cout<<"\nNhap n: "; cin>>n; if(n<=0||n>MAX) cout<<"Sai!"; }while(n<=0||n>MAX); } void NhapDS(SINHVIEN a[],int n) { for(int i=0;i<n;i++) Nhap(a[i]); } void XuatDS(SINHVIEN a[],int n) { for(int i=0;i<n;i++) Xuat(a[i]); } int TimVT_SV_DTB_CaoNhat(SINHVIEN a[],int n) { int vt=0; for(int i=0;i<n;i++) if(a[i].DTB>a[vt].DTB) vt=i; return vt; } void HoanVi(SINHVIEN &a,SINHVIEN &b) { SINHVIEN t=a; a=b; b=t; } void SapTangDTB(SINHVIEN a[],int n) { for(int i=0;i<n-1;i++) for(int j=i+1;j<n;j++) if(a[i].DTB<a[j].DTB) HoanVi(a[i],a[j]); } void SapGiamToan(SINHVIEN a[],int n) { for(int i=0;i<n-1;i++) for(int j=i+1;j<n;j++) if(a[i].Toan<a[j].Toan) HoanVi(a[i],a[j]); } void LietkeSVDau(SINHVIEN a[],int n) { for(int i=0;i<n;i++) if(a[i].DTB>=5 && a[i].Toan>=3 && a[i].Ly>=3 && a[i].Hoa>=3) Xuat(a[i]); } int TimVT_SV_NamSinhMin(SINHVIEN a[],int n) { int vt=0; for(int i=0;i<n;i++) if(a[i].NamSinh <a[vt].NamSinh) vt=i; return vt; } void Lietketheoten(SINHVIEN a[],int n, char Ten[]) { for(int i=0;i<n;i++) if(strcmp(a[i].HoTen,Ten)==0) Xuat(a[i]); }
//float TimDTBCaoNhat(DSSV ds,int n) //{ // float max=ds[0].DTB; // for(int i=0;i<n;i++) // if(ds[i].DTB>max) // max=ds[i].DTB; // return max; //} //void XuatSV_DTB_CaoNhat(DSSV ds, int n) //{ // float max=TimDTBCaoNhat(ds,n); // for(int i=0; i<n;i++) // if(ds[i].DTB==max) // Xuat(ds[i]); //} //void SapxepGiamDiemToan(DSSV ds,int n) //{ // for(int i=0;i<n-1;i++) // for(int j=i+1;j<n;j++) // if(ds[i].Toan>ds[j].Toan) // HoanVi(ds[i],ds[j]); //}
| |
|