1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài tập hệ điều hành xây dựng lớp sinh viên

9 961 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 9
Dung lượng 13,19 KB

Nội dung

Bai 27: Viet lai bai 1 bang cach xay dung lop sinh vien BAI GIAI #include #include #include #include #include #include struct sinhvien { char mssv[5]; char tensv[50]; char msmh[5]; char tenmh[50]; float dtb; }; class QLSV { public: void Nhapsv(sinhvien a[], int n); void Insv(sinhvien a[], int n); void Sapxepsv(sinhvien a[], int n);

Bai 27: Viet lai bai 1 bang cach xay dung lop sinh vien BAI GIAI #include <iostream.h> #include <iomanip.h> #include <conio.h> #include <stdio.h> #include <stdlib.h> #include <string.h> struct sinhvien { char mssv[5]; char tensv[50]; char msmh[5]; char tenmh[50]; float dtb; }; class QLSV { public: void Nhapsv(sinhvien a[], int n); void Insv(sinhvien a[], int n); void Sapxepsv(sinhvien a[], int n); void ThemCuoiDanhSach(sinhvien a[], int &n, sinhvien x); void ThemVaoBatKy(sinhvien a[], int &n, sinhvien x, int vitri); void ThemVaoBatKy_Soft(sinhvien a[], int &n, sinhvien x, int vitri); void XoaBatKy_Soft(sinhvien a[], int &n, int vitri); void TimKiemSinhVien(sinhvien a[], int n, sinhvien x); }; void QLSV::Nhapsv(sinhvien a[], int n) { int i; for(i=0;i<n;i++) { cout<<"\nNhap sinh vien thu: "<<i+1; cout<<"\n\t+ Nhap ma sinh vien: "; gets(a[i].mssv); cout<<"\n\t+ Nhap ten sinh vien: "; gets(a[i].tensv); cout<<"\n\t+ Nhap ma mon hoc: "; cin>>a[i].msmh; cout<<"\n\t+ Nhap ten mon hoc: "; gets(a[i].tenmh); cout<<"\n\t+ Nhap diem trung binh: "; cin>>a[i].dtb; } } void QLSV::Insv(sinhvien a[], int n) { int i; cout<<"\n"<<setw(15)<<"MA SINH VIEN"<<setw(20)<<"TEN SINH VIEN"<<setw(15)<<"MA MON HOC"<<setw(15)<<"TEN MON HOC"<<setw(10)<<"DIEM TB"; cout<<"\n"<<setw(15)<<"============"<<setw(20)<<"============="<<setw(15)<<"=========="<<set w(15)<<"==========="<<setw(10)<<"======"; for(i=0;i<n;i++) { cout<<"\n"<<setw(15)<<a[i].mssv<<setw(20)<<a[i].tensv<<setw(15)<<a[i].msmh<<setw(15)<<a[i].tenmh<< setw(10)<<a[i].dtb; } } void QLSV::Sapxepsv(sinhvien a[], int n) { int i,j; sinhvien tg; for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) { if(a[i].dtb>a[j].dtb) { tg=a[i]; a[i]=a[j]; a[j]=tg; } } } } void QLSV::ThemCuoiDanhSach(sinhvien a[], int &n, sinhvien x) { cout<<"\n\t+ Nhap ma sinh vien: "; gets(x.mssv); cout<<"\n\t+ Nhap ten sinh vien: "; gets(x.tensv); cout<<"\n\t+ Nhap ma mon hoc: "; cin>>x.msmh; cout<<"\n\t+ Nhap ten mon hoc: "; gets(x.tenmh); cout<<"\n\t+ Nhap diem trung binh: "; cin>>x.dtb; a[n] = x; n++; } void QLSV::ThemVaoBatKy(sinhvien a[], int &n, sinhvien x, int vitri) { cout<<"\n\t+ Nhap ma sinh vien: "; gets(x.mssv); cout<<"\n\t+ Nhap ten sinh vien: "; gets(x.tensv); cout<<"\n\t+ Nhap ma mon hoc: "; cin>>x.msmh; cout<<"\n\t+ Nhap ten mon hoc: "; gets(x.tenmh); cout<<"\n\t+ Nhap diem trung binh: "; cin>>x.dtb; a[n]=a[vitri]; a[vitri] = x; n++; } void QLSV::ThemVaoBatKy_Soft(sinhvien a[], int &n, sinhvien x, int vitri) { cout<<"\n\t+ Nhap ma sinh vien: "; gets(x.mssv); cout<<"\n\t+ Nhap ten sinh vien: "; gets(x.tensv); cout<<"\n\t+ Nhap ma mon hoc: "; cin>>x.msmh; cout<<"\n\t+ Nhap ten mon hoc: "; gets(x.tenmh); cout<<"\n\t+ Nhap diem trung binh: "; cin>>x.dtb; for (int i=n-1; i>vitri; i--) { a[i] = a[i-1]; a[vitri] = x; } n++; } void QLSV::XoaBatKy_Soft(sinhvien a[], int &n, int vitri) { for (int i=vitri; i<n-1; i++) a[i] = a[i+1]; n--; } void QLSV::TimKiemSinhVien(sinhvien a[], int n, sinhvien x) { cout<<"\n"<<setw(15)<<"MA SINH VIEN"<<setw(20)<<"TEN SINH VIEN"<<setw(15)<<"MA MON HOC"<<setw(15)<<"TEN MON HOC"<<setw(10)<<"DIEM TB"; cout<<"\n"<<setw(15)<<"============"<<setw(20)<<"============="<<setw(15)<<"=========="<<set w(15)<<"==========="<<setw(10)<<"======="; for (int i=0; i<n; i++) { if (strcmp(a[i].tensv,x.tensv)==0) { cout<<"\n"<<setw(15)<<a[i].mssv<<setw(20)<<a[i].tensv<<setw(15)<<a[i].msmh<<setw(15)<<a[i].tenmh<< setw(10)<<a[i].dtb; } else { cout<<setw(15)<<"\n\tKhong tim thay sinh vien nay."; } } } void main() { int n, chon,vitri; char c; QLSV sv; sinhvien a[50],x; clrscr(); do { cout<<"\nChon 1 de nhap diem sinh vien "; cout<<"\nChon 2 de sap xep thong tin diem sinh vien "; cout<<"\nChon 3 de in thong tin diem sinh vien "; cout<<"\nChon 4 de them thong tin diem sinh vien "; cout<<"\nChon 5 de xoa thong tin diem sinh vien "; cout<<"\nChon 6 de tim kiem thong tin diem sinh vien "; cout<<"\nChon 7 de thoat chuong trinh. "; cout<<"\nHay chon chuc nang: "; cin>>chon; switch (chon) { case 1: cout<<"\nNhap so sinh vien: "; cin>>n; sv.Nhapsv(a,n); break; case 2: sv.Sapxepsv(a,n); break; case 3: cout<<"\nIn danh sach diem sinh vien:"; sv.Insv(a,n); break; case 4: //ThemCuoiDanhSach(a,n,x); cout<<"\nChon vi tri de them diem sinh vien: "; cin>>vitri; sv.ThemVaoBatKy_Soft(a,n,x,vitri); //ThemVaoBatKy(a,n,x,vitri); break; case 5: cout<<"\nChon vi tri de xoa diem sinh vien: "; cin>>vitri; sv.XoaBatKy_Soft(a,n,vitri); break; case 6: cout<<"\nNhap ten sinh vien de tim kiem: "; gets(x.tensv); sv.TimKiemSinhVien(a,n,x); break; case 7: cout<<"\nTiep tuc nua khong (c/k), khong tiep nua nhan n de thoat: "; c=getche(); } }while(c!='c' && c!='C'); getch(); } . ThemVaoBatKy_Soft(sinhvien a[], int &n, sinhvien x, int vitri); void XoaBatKy_Soft(sinhvien a[], int &n, int vitri); void TimKiemSinhVien(sinhvien a[], int n, sinhvien. void Sapxepsv(sinhvien a[], int n); void ThemCuoiDanhSach(sinhvien a[], int &n, sinhvien x); void ThemVaoBatKy(sinhvien a[], int &n, sinhvien x,

Ngày đăng: 19/08/2013, 09:35

TỪ KHÓA LIÊN QUAN

w