Tải bản đầy đủ (.pdf) (114 trang)

Tổng hợp các bài tập c++ oop phần 1

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1022.68 KB, 114 trang )

Tổng hợp các bài tập C++ hướng đối tượng.
(**) Lưu ý : trong phần này mình sẽ sử dụng VS code để lập trình hướng đối tượng, trinh
biên dịch MINGW nên chắc sẽ khác so với trình soạn thảo của bạn đang dùng, khuyến
khích các bạn làm bài tập trước rồi mới xem kết quả nhé.
Link chi tiết về VS code và trinh biên d ịch MINGW tại đây : />Chủ yếu phần này minh quan tâm đến chất lượng, nếu tài liệu có xấu, khơng được đẹp thì
mọi người thơng cảm cho mình nha .
Tài liệu, bài tập này phù hợp : với những bạn sinh viên mới nhập mơn lập trinh hướng đối
tượng, cịn lơ mơ và chưa biết code hướng đối tượng, những bạn tự học. OK bắt đầu vào
phần bài tập thôi Lesss go.

Bài 1 : Nhập vào n diểm n<100. Tìm khoảng cách của 2 điểm lớn nhất in ra 2 điểm đó.
Giải
(*)Cách 1 : Code dùng Struct.

#include<iostream>
#include<math.h>
#define MAX 100
using namespace std;
struct Diem{
float TungDo;
float HoanhDo;
};
//viet ham nhap
void Nhap(Diem &x){
cout<<"\nNHap vao hoanh do ";
cin>>x.HoanhDo;
cout<<"\nNhap vao tung do ";
cin>>x.TungDo;
}
//Viet Ham xuat
void Xuat(Diem x)


{
cout<<"(x,y) = ("<}
//Ham tinh toan khoang cach
float KhoangCach(Diem A,Diem B)
{


return sqrt((B.HoanhDo-A.HoanhDo)*(B.HoanhDo-A.HoanhDo)+(B.TungDoA.TungDo)*(B.TungDo-A.TungDo));
}
int main()
{
Diem Arr[MAX];
int n;
cout<<"\nNhap so diem can tinh. ";
cin>>n;
for(int i=0;i{
cout<<"\nMoi ban nhap vao toa do cua diem thu"<Nhap(Arr[i]);
}
cout<<"\nCac diem la: ";
for (int i = 0; i < n; i++)
{
cout<<"\nDiem thu "<Xuat(Arr[i]);
cout<}
float Max = KhoangCach(Arr[0],Arr[1]);
int viTr1=0,viTr2=1;

for(int i=0;i{
for (int j = i+1; j < n; j++)
{
if(KhoangCach(Arr[i],Arr[j])>Max)
{
Max = KhoangCach(Arr[i],Arr[j]);
viTr1=i;
viTr2=j;
}
}
}
cout<<"\nKhoang cach lon nhat la khoang cach giua hai diem."<<"\nA = ";
Xuat(Arr[viTr1]);
cout<<"\nB = ";
Xuat(Arr[viTr2]);
cout<<"\nAB = "<system("pause");
return 0;
}


(*)Cách 2: code dùng Class
#include<iostream>
#include<math.h>
#define MAX 100
using namespace std;
class Diem{
public:
void Nhap();

void Xuat();
float KhoangCach(Diem X);
private:
float TungDo;
float HoanhDo;
};
void Diem::Nhap()
{
cout<<"\nNhap vao Hoanh Do: ";
cin>>HoanhDo;
cout<<"\nNhap vao Tung Do: ";
cin>>TungDo;
}
void Diem::Xuat()
{
cout<<"(x,y) = ("<}
float Diem::KhoangCach(Diem x)
{
return sqrt((x.HoanhDo-HoanhDo)*(x.HoanhDo-HoanhDo)+(x.TungDoTungDo)*(x.TungDo-TungDo));
}
int main(){
Diem Arr[MAX];
int n;
cout<<"\nNHap so diem can tinh. ";cin>>n;
for (int i = 0; i < n; i++)
{
Arr[i].Nhap();
}
cout<<"\nCac diem da nhap la:\n";

for (int i = 0; i < n; i++)
{
cout<<"\nDiem thu"<Arr[i].Xuat();
cout<

}
float Max=Arr[0].KhoangCach(Arr[1]);
int Vtri1=0,Vtri2=1;
for (int i = 0; i < n; i++)
{
for (int j = i+1; i < n; i++)
{
float KC = Arr[i].KhoangCach(Arr[j]);
if(KC>Max)
{
Max=KC;
Vtri1=i;
Vtri2=j;
}
}
}
cout<<"\nKhoang cach lon nhat giua hai diem : "<<"\nA = ";
Arr[Vtri1].Xuat();
cout<<"\nB = ";
Arr[Vtri2].Xuat();
cout<<"\nAB = "<system("pause");
return 0;

}

Bài 2 : Nhập vào n hình trịn n<100, In ra các hình trịn theo thứ tự S tăng dần , In ra
theo thứ tự chu vi giảm dần.
Giải
(*)Cách 1 : Code dùng Struct
#include<iostream>
#define PI 3.14
#define MAX 100
using namespace std;
struct HinhTron
{
float r;
float s;
float p;
};
void Nhap(HinhTron &X)
{


cout<<"\nNhap vao ban kinh r = ";
cin>>X.r;
}
void TinhDienTich(HinhTron &X)
{
X.s=PI*X.r*X.r;
}
void TinhChuVi(HinhTron &X)
{
X.p=PI*X.r*2;

}
void Xuat(HinhTron X)
{
cout<<"\nHinh Tron:\n";
cout<<"\Ban Kinh r = "<cout<<"\nDien Tich S = "<cout<<"\nChu Vi P = "<}
void Swap(HinhTron &h1,HinhTron &h2)
{
HinhTron X;
X=h1;
h1=h2;
h2=X;
}
void XapXepTheoS(HinhTron Arr[],int n)
{
for(int i=0;i{
for(int j=i+1;j{
if(Arr[i].s>Arr[j].s)
Swap(Arr[i],Arr[j]);
}
}
}
void XapXepTheoP(HinhTron Arr[],int n)
{
for(int i=0;i{

for(int j=i+1;j{
if(Arr[i].pSwap(Arr[i],Arr[j]);
}


}
}
int main()
{
HinhTron Arr[MAX];
int n;
cout<<"\nNhap so hinh tron can tinh .";cin>>n;
for(int i=0;i{
cout<<"\nNhap ban kinh hinh tron thu "<Nhap(Arr[i]);
cout<}
for(int i=0;i{
TinhDienTich(Arr[i]);
TinhChuVi(Arr[i]);
}
XapXepTheoS(Arr,n);
cout<<"\nThu tu cac hinh tron theo S tu thap toi cao la:\n";
for(int i=0;i{
cout<<"\nHinh "<

Xuat(Arr[i]);
cout<}
XapXepTheoP(Arr,n);
cout<<"\nThu tu cac hinh tron theo P tu cao toi thap la:\n";
for(int i=0;i{
cout<<"\nHinh "<Xuat(Arr[i]);
cout<}
system("pause");
return 0;
}

(*)Cách 2: code dùng class
#include<iostream>
#define PI 3.14
#define MAX 100
using namespace std;
class HinhTron
{


public:
HinhTron();
~HinhTron();
void Nhap();
void Xuat();
void TinhChuVi();

void TinhDienTich();
float getS();
float getP();
private:
float r;
float s;
float p;
};
HinhTron::HinhTron()//ham khoi tao mac dinh
{
r=0;s=0;p=0;
}
HinhTron::~HinhTron()//ham xoa
{
}
void HinhTron::Nhap()
{
cout<<"\nNhap vao ban kinh r = ";
cin>>r;
}
void HinhTron::TinhDienTich()
{
s=PI*r*r;
}
void HinhTron::TinhChuVi()
{
p=PI*r*2;
}
float HinhTron::getP()
{

return p;
}
float HinhTron::getS()
{
return s;
}
void HinhTron::Xuat()
{
cout<<"\nHinh Tron:\n";


cout<<"\Ban Kinh r = "<cout<<"\nDien Tich S = "<cout<<"\nChu Vi P = "<}
void Swap(HinhTron &h1,HinhTron &h2)
{
HinhTron X;
X=h1;
h1=h2;
h2=X;
}
void XapXepTheoS(HinhTron Arr[],int n)
{
for(int i=0;i{
for(int j=i+1;j{
if(Arr[i].getS()>Arr[j].getS())
Swap(Arr[i],Arr[j]);

}
}
}
void XapXepTheoP(HinhTron Arr[],int n)
{
for(int i=0;i{
for(int j=i+1;j{
if(Arr[i].getP()Swap(Arr[i],Arr[j]);
}
}
}
int main()
{
HinhTron Arr[MAX];
int n;
cout<<"\nNhap so hinh tron can tinh .";cin>>n;
for(int i=0;i{
cout<<"\nNhap ban kinh hinh tron thu "<Arr[i].Nhap();
cout<}
for(int i=0;i

{
Arr[i].TinhChuVi();

Arr[i].TinhDienTich();
}
XapXepTheoS(Arr,n);
cout<<"\nThu tu cac hinh tron theo S tu thap toi cao la:\n";
for(int i=0;i{
cout<<"\nHinh "<Arr[i].Xuat();
cout<}
XapXepTheoP(Arr,n);
cout<<"\nThu tu cac hinh tron theo P tu cao toi thap la:\n";
for(int i=0;i{
cout<<"\nHinh "<Arr[i].Xuat();
cout<}
system("pause");
return 0;
}

Bài 3: Tạo menu
1.Them xe.
2.Xuat Thong tin xe theo bks
3.Xuat tat ca danh sach xe.
4.Xap xep xe theo dung tich
5.Thoat.
Giải
(*) Cách 1: code dùng struct

#include<iostream>
#include<iomanip>
#include<string>
#define MAX 100
using namespace std;
struct Car
{
string ChuXe;
string BKS;
string TenXe;
string HangXe;


float DungTich;
};
void Nhap(Car &car)
{
cout<<"\nNhap vao cac thong tin cua xe. ";
cout<<"\nNhap Ten Chu Xe.";
fflush(stdin);
getline(cin,car.ChuXe);
cout<<"\nNhap Bien So Xe.";
fflush(stdin);
getline(cin,car.BKS);
cout<<"\nNhap Ten Xe.";
fflush(stdin);
getline(cin,car.TenXe);
cout<<"\nNhap Hang Xe.";
fflush(stdin);
getline(cin,car.HangXe);

cout<<"\nNhap Dung Tich Xe (lit)";
fflush(stdin);
cin>>car.DungTich;
}
void Xuat(Car car)
{
cout<)<}
void Swap(Car &X,Car &Y)
{
Car swap;
swap=X;
X=Y;
Y=swap;
}
void XapXep(Car Arr[],int index)
{
for(int i=0;i{
for(int j=i+1;j{
if(Arr[i].DungTich>Arr[j].DungTich)
{
Swap(Arr[i],Arr[j]);
}
}
}



}
void MENU()
{
int n;
Car Arr[MAX];
int index=0;
int x;
do
{
system("cls");
cout<<"\n\t\t\t\t\t===============Car===================";
cout<<"\n\t\t\t\t\t1.Nhap moi xe.";
cout<<"\n\t\t\t\t\t2.In thong tin chi tiet cua xe.";
cout<<"\n\t\t\t\t\t3.In tat ca danh sach xe oto.";
cout<<"\n\t\t\t\t\t4.Xap Xep theo dung tich tang dan.";
cout<<"\n\t\t\t\t\t5.Thoat.";
cout<<"\n\t\t\t\t\tMoi ban nhap vao lua chon!";
cin>>x;
if(x<=0||x>=6)
{
system("cls");
cout<<"Chon sai vui long chon lai.";
system("pause");
}
switch(x)
{
case 1:
{
int dem=0;
cout<<"\nChon so luong xe can nhap.";

cin>>n;
for(int i=index;i{
cout<<"\nXe thu "<Nhap(Arr[i]);
dem++;
}
index+=dem;
dem=0;
}
break;
case 2:
{
string bks;
cout<<"\nNhap vao BKS xe can in thong tin.";


fflush(stdin);
getline(cin,bks);
for(int i=0;i{
if(bks==Arr[i].BKS)
{
cout<<"\n Thong tin cua xe co BKS "<cout<Xe"<Xuat(Arr[i]);
system("pause");
}
}

}
break;
case 3:
{
cout<<"\nDanh sach tat ca cac oto la.\n";
cout<Xe"<for(int i=0;i{
Xuat(Arr[i]);
cout<}
system("pause");
}
break;
case 4:
{
XapXep(Arr,index);
cout<<"\nDanh sach xe sap xe theo dung tich tang dan la.\n";
cout<Xe"<for(int i=0;i{
Xuat(Arr[i]);
}
system("pause");
}
break;
default:
break;

}
}


while(x!=5);
}
int main()
{
MENU();
system("pause");
return 0;
}

(*)Cách 2 : Dùng class
#include<iostream>
#include<iomanip>
#include<string>
#define MAX 100
using namespace std;
class Car
{
public:
Car();
~Car();
void Nhap();
void Xuat();
string getBKS();
float getDungTich();
private:
string ChuXe;

string BKS;
string TenXe;
string HangXe;
float DungTich;
};
Car::Car()//ham khoi tao mac dinh
{
ChuXe="";BKS="";TenXe="";HangXe="";DungTich=0;
}
Car::~Car()//ham xoa
{
}
void Car::Nhap()
{
cout<<"\nNhap vao cac thong tin cua xe. ";
cout<<"\nNhap Ten Chu Xe.";
fflush(stdin);
getline(cin,ChuXe);
cout<<"\nNhap Bien So Xe.";


fflush(stdin);
getline(cin,BKS);
cout<<"\nNhap Ten Xe.";
fflush(stdin);
getline(cin,TenXe);
cout<<"\nNhap Hang Xe.";
fflush(stdin);
getline(cin,HangXe);
cout<<"\nNhap Dung Tich Xe (lit)";

fflush(stdin);
cin>>DungTich;
}
string Car::getBKS()
{
return BKS;
}
float Car::getDungTich()
{
return DungTich;
}
void Car::Xuat()
{
cout<(15)<}
void Swap(Car &X,Car &Y)
{
Car swap;
swap=X;
X=Y;
Y=swap;
}
void XapXep(Car Arr[],int index)
{
for(int i=0;i{
for(int j=i+1;j{
if(Arr[i].getDungTich()>Arr[j].getDungTich())

{
Swap(Arr[i],Arr[j]);
}
}
}
}


void MENU()
{
int n;
Car Arr[MAX];
int index=0;
int x;
do
{
system("cls");
cout<<"\n\t\t\t\t\t===============Car===================";
cout<<"\n\t\t\t\t\t1.Nhap moi xe.";
cout<<"\n\t\t\t\t\t2.In thong tin chi tiet cua xe.";
cout<<"\n\t\t\t\t\t3.In tat ca danh sach xe oto.";
cout<<"\n\t\t\t\t\t4.Xap Xep theo dung tich tang dan.";
cout<<"\n\t\t\t\t\t5.Thoat.";
cout<<"\n\t\t\t\t\tMoi ban nhap vao lua chon!";
cin>>x;
if(x<=0||x>=6)
{
system("cls");
cout<<"Chon sai vui long chon lai.";
system("pause");

}
switch(x)
{
case 1:
{
int dem=0;
cout<<"\nChon so luong xe can nhap.";
cin>>n;
for(int i=index;i{
cout<<"\nXe thu "<Arr[i].Nhap();
dem++;
}
index+=dem;
dem=0;
}
break;
case 2:
{
string bks;
cout<<"\nNhap vao BKS xe can in thong tin.";
fflush(stdin);


getline(cin,bks);
for(int i=0;i{
if(bks==Arr[i].getBKS())
{

cout<<"\n Thong tin cua xe co BKS "<cout<Xe"<Arr[i].Xuat();
system("pause");
}
}
}
break;
case 3:
{
cout<<"\nDanh sach tat ca cac oto la.\n";
cout<Xe"<for(int i=0;i{
Arr[i].Xuat();
cout<}
system("pause");
}
break;
case 4:
{
XapXep(Arr,index);
cout<<"\nDanh sach xe sap xe theo dung tich tang dan la.";
cout<Xe"<for(int i=0;i{

Arr[i].Xuat();
}
system("pause");
}
break;
default:
break;
}
}


while(x!=5);
}
int main()
{
MENU();
system("pause");
return 0;
}

Bài 4: Viết một chương trình khai báo một cấu trúc Sinh_Vien gồm các thông tin:
— Mã sinh viên: int
— Tên sinh viên: String
— Điểm trung bình: float
— Nhập giá trị cho N sinh viên (N < 100), hiển thị thông tin từng sinh viên và cho biết
sinh viên nào có điểm trung bình lớn nhất.
Giải
(*)Cách 1 : Dùng Struct.
#include<iostream>
#include<string>

#include<iomanip>
#define MAX 100
using namespace std;
struct SinhVien//Khởi tạo cấu trúc sinh vien
{
int MaSV;
string TenSV;
float DiemTB;
};
void Nhap(SinhVien &sv)//Định nghĩa phương thức
{
cout<<"\nNhap Ma SV:";
cin>>sv.MaSV;
cout<<"\nNhap Ten Sinh Vien:";
fflush(stdin);
getline(cin,sv.TenSV);
cout<<"\nNhap Diem TB:";
cin>>sv.DiemTB;
}
void Xuat(SinhVien sv)
{
cout<}


int TimKiem(SinhVien Arr[],int n)//Hàm Tìm Kiếm trả về vị trí sinh viên có điểm
TB cao nhất
{
float max=Arr[0].DiemTB;
int vt=0;

for(int i=1;i{
if(Arr[i].DiemTB>max)
{
max=Arr[i].DiemTB;
vt=i;
}
}
return vt;
}
void MENU()//MENU chương trình thêm sinh động
{
SinhVien Arr[MAX];
int x,index=0,n;
do
{
system("cls");
cout<<"\n\t\t\t\t\t====================MENU=====================";
cout<<"\n\t\t\t\t\t1.Nhap vao sinh vien moi.";
cout<<"\n\t\t\t\t\t2.In ra tat ca cac sinh vien.";
cout<<"\n\t\t\t\t\t3.In ra sinh vien co diem TB cao nhat.";
cout<<"\n\t\t\t\t\t4.Thoat!";
cout<<"\n\t\t\t\t\t Moi ban nhap vao lua chon!";
cin>>x;
switch (x)
{
case 1:
{
system("cls");
cout<<"\nMoi ban nhap vao so sinh vien can them.";

cin>>n;
int dem=0;
for(int i=index;i{
cout<<"\nMoi ban nhap vao thong tin cua sinh vien thu
"<Nhap(Arr[i]);
dem++;
}
index+=dem;


cout<<"\nDa nhap xong!";
system("pause");
}
break;
case 2:
{
system("cls");
cout<<"\n\t\tDanh Sach Sinh Vien.\n";
cout<TB"<for(int i=0;i{
Xuat(Arr[i]);
}
system("pause");
}
break;
case 3:

{
system("cls");
cout<<"\n\t\t\t\t\tNhung Sinh Vien Co Diem TB cao nhat la.\n";
cout<TB"<for(int i=0;i{
if(Arr[TimKiem(Arr,n)].DiemTB==Arr[i].DiemTB)
{
Xuat(Arr[i]);
cout<}
}
system("pause");
}
break;
default:
break;
}
}
while(x!=4);
}
int main()
{
MENU();
system("pause");
return 0;


}


(*)Cách 2 : code dùng class
#include<iostream>
#include<string>
#include<iomanip>
#define MAX 100
using namespace std;
class SinhVien//Khởi tạo class sinh vien
{
public:
void Nhap();//Khai báo các phương thức
void Xuat();
float getDiemTB();
private://Các thuộc tính
int MaSV;
string TenSV;
float DiemTB;
};
void SinhVien::Nhap()//Định nghĩa phương thức
{
cout<<"\nNhap Ma SV:";
cin>>MaSV;
cout<<"\nNhap Ten Sinh Vien:";
fflush(stdin);
getline(cin,TenSV);
cout<<"\nNhap Diem TB:";
cin>>DiemTB;
}
void SinhVien::Xuat()
{

cout<}
float SinhVien::getDiemTB()//Hàm trả về Điểm TB vì mình để DiemTB là private nên
cần cái này
{
return DiemTB;
}
int TimKiem(SinhVien Arr[],int n)//Hàm Tìm Kiếm trả về vị trí sinh viên có điểm
TB cao nhất
{
float max=Arr[0].getDiemTB();
int vt=0;
for(int i=1;i

{
if(Arr[i].getDiemTB()>max)
{
max=Arr[i].getDiemTB();
vt=i;
}
}
return vt;
}
void MENU()//MENU chương trình thêm sinh động
{
SinhVien Arr[MAX];
int x,index=0,n;
do
{

system("cls");
cout<<"\n\t\t\t\t\t====================MENU=====================";
cout<<"\n\t\t\t\t\t1.Nhap vao sinh vien moi.";
cout<<"\n\t\t\t\t\t2.In ra tat ca cac sinh vien.";
cout<<"\n\t\t\t\t\t3.In ra sinh vien co diem TB cao nhat.";
cout<<"\n\t\t\t\t\t4.Thoat!";
cout<<"\n\t\t\t\t\t Moi ban nhap vao lua chon!";
cin>>x;
switch (x)
{
case 1:
{
system("cls");
cout<<"\nMoi ban nhap vao so sinh vien can them.";
cin>>n;
int dem=0;
for(int i=0;i{
cout<<"\nMoi ban nhap vao thong tin cua sinh vien thu
"<Arr[i].Nhap();
dem++;
}
index+=dem;
cout<<"\nDa nhap xong!";
system("pause");
}
break;
case 2:
{



system("cls");
cout<<"\n\t\tDanh Sach Sinh Vien.\n";
cout<TB"<for(int i=0;i{
Arr[i].Xuat();
}
system("pause");
}
break;
case 3:
{
system("cls");
cout<<"\n\t\t\t\t\tNhung Sinh Vien Co Diem TB cao nhat la.\n";
cout<TB"<for(int i=0;i{
if(Arr[TimKiem(Arr,n)].getDiemTB()==Arr[i].getDiemTB())
{
Arr[i].Xuat();
cout<}
}
system("pause");
}
break;

default:
break;
}
}
while(x!=4);
}
int main()
{
MENU();
system("pause");
return 0;
}

Bài 5: Viết một chương trình C++ khai báo lớp Sinh_Viên bao gồm:
— Biến thành viên của lớp:







ID,
Tên_Sinh_Viên,
Điểm_Kiểm_tra_Giữa_Kỳ,
Điểm_Kiểm_Tra_Cuối_Kỳ

— Hàm thành viên của lớp:





Nhập thông tin sinh viên
In ra màn hình thơng tin sinh viên
Sửa thơng tin sinh viên
Giải

(*)Cách 1: dùng struct
#include<iostream>
#include<string>
#include<iomanip>
#define MAX 100
using namespace std;
struct SinhVien //Khởi tạo cấu trúc sinh vien
{
int MaSV;
string TenSV;
float DiemGiuaKy;
float DiemCuoiKy;
};
void Nhap(SinhVien &sv)//Hàm nhập
{
cout<<"\nNhap Ma SV:";
cin>>sv.MaSV;
cout<<"\nNhap Ten Sinh Vien:";
fflush(stdin);
getline(cin,sv.TenSV);
cout<<"\nNhap Diem Giua ky:";
cin>>sv.DiemGiuaKy;
cout<<"\nNhap Diem cuoi ky.";

cin>>sv.DiemCuoiKy;
}
void Xuat(SinhVien sv)
{
cout<)<}
int TimKiem(SinhVien Arr[],int n,int masv)//Hàm tìm kiếm ID hợp lệ
{


for(int i=0;i{
if(Arr[i].MaSV==masv)
{
return i;
}
}
return -1;
}
void MENU()//MENU chương trình thêm sinh động
{
SinhVien Arr[MAX];
int x,index=0,n;
do
{
system("cls");
cout<<"\n\t\t\t\t\t====================MENU=====================";
cout<<"\n\t\t\t\t\t1.Nhap vao sinh vien moi.";
cout<<"\n\t\t\t\t\t2.In ra tat ca cac sinh vien.";

cout<<"\n\t\t\t\t\t3.Sua thong tin sinh vien theo ma SV.";
cout<<"\n\t\t\t\t\t4.Thoat!";
cout<<"\n\t\t\t\t\t Moi ban nhap vao lua chon!";
cin>>x;
switch (x)
{
case 1:
{
system("cls");
cout<<"\nMoi ban nhap vao so sinh vien can them.";
cin>>n;
int dem=0;
for(int i=index;i{
cout<<"\nMoi ban nhap vao thong tin cua sinh vien thu
"<Nhap(Arr[i]);
dem++;
}
index+=dem;
cout<<"\nDa nhap xong!";
system("pause");
}
break;
case 2:
{


system("cls");
cout<<"\n\t\tDanh Sach Sinh Vien.\n";

cout<Ky"<for(int i=0;i{
Xuat(Arr[i]);
}
system("pause");
}
break;
case 3:
{
int t,k;
do{
cout<<"\nMoi ban nhap vao ID sinh vien can sua.\n";
int masv;cin>>masv;
int vt=TimKiem(Arr,index,masv);
if(vt!=-1)
{
system("cls");
cout<<"\nNhap chinh xac!\n";
cout<<"\nSinh vien co ma so ID :"<cout<SV"<Xuat(Arr[vt]);
do
{
cout<<"\n\n\t\t\t\t\t=================Sua Thong Tin
Sinh Vien===================";
cout<<"\n\t\t\t\t\t1.Sua Ten Sinh Vien.";
cout<<"\n\t\t\t\t\t2.Sua Diem Giua Ky.";

cout<<"\n\t\t\t\t\t3.Sua Diem Cuoi Ky.";
cout<<"\n\t\t\t\t\t4.Quay Lai!";
cout<<"\n\t\t\t\t\t Moi ban nhap vao lua chon!";
cin>>t;
switch (t)
{
case 1:
{
system("cls");
string name;
cout<<"\nMoi ban nhap vao ten moi!";
fflush(stdin);
getline(cin,name);


×