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

Bài tập lập trình công nghệ thông tin_2 pot

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 (202.09 KB, 13 trang )

183
183
 Khai báo biến:
char MSSV[11] ;
char HoTenSV[30];
bool Phai ;
float Toan, Ly, Hoa;
 Truyền thông tin 1 SV cho hàm:
void Nhap(char MSSV[], chra HoTenSV[], bool Phai,
float Toan, float Ly, float Hoa)
void Xuat(char MSSV[], chra HoTenSV[], bool Phai,
float Toan, float Ly, float Hoa)
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
184
184
Nhận xét:
ðặt tên biến khó khăn và khó quản lý
Truyền tham số cho hàm quá nhiều
Tìm kiếm, sắp xếp, sao chép khó khăn
Tốn nhiều bô nhớ
. . . .
 Ý tưởng:
Gom các thông tin cần lưu trữ 1 sinh viên thành một
kiểu dữ liệu duy nhất 
Kiểu struct
Written by: Dương Thành Phết

This is trial version


www.adultpdf.com
185
185
II.Khai Báo Kiểu Cấu Trúc Và Biến Cấu Trúc
1. Khái niệm:
Kiểu cấu trúc (Structure) là kiểu dữ liệu bao gồm
nhiều thành phần có kiểu khác nhau, mỗi thành phần
ñược gọi là một trường (field)
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
186
186
2. Khai báo kiểu cấu trúc và biến cấu trúc:
Cú pháp 1:
struct <Tên cấu trúc>
{
<Kiểu> <Trường 1> ;
<Kiểu> <Trường 2> ;
……
<Kiểu> <Trường n> ;
};
struct <Tên cấu trúc> <Biến 1> [, <Biến 2>…];
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
187
187

struct SinhVien
{
char MSSV[6] ;
char HoTenSV[30];
bool Phai ;
float Toan, Ly, Hoa;
};
struct SinhVien SV;
VD: khai báo một kiểu struct ñể lưu trữ thông tin trên sinh viên.
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
188
188
Cú pháp 2:
typedef struct
{
<Kiểu> <Trường 1> ;
<Kiểu> <Trường 2> ;
……
<Kiểu> <Trường n> ;
} <Tên cấu trúc> ;
<Tên cấu trúc> <Biến 1> [, <Biến 2>…];
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
189
189

typedef struct
{
char MSSV[6] ;
char HoTenSV[30];
bool Phai ;
float Toan, Ly, Hoa;
}SinhVien;
SinhVien SV;
VD: khai báo một kiểu struct ñể lưu trữ thông tin trên sinh viên.
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
190
190
III.Các Thao Tác Trên Biến Kiểu Cấu Trúc
1. Khởi tạo cấu trúc
Việc khởi tạo cấu trúc có thể ñược thực hiện trong lúc
khai báo biến cấu trúc.
Các trường của cấu trúc ñược khởi tạo ñược ñạt giữa
2 dấu { và }, chúng ñược phân cách nhau bởi dấu phẩy.
struct SinhVien SV={‘sv01’,’nguyen thi lan’,0,6.0,7.5,8.0};
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
191
191
2. Truy xuất từng trường trong biến cấu trúc
Cú pháp:

<Biến cấu trúc>.<Tên trường>
s = SV.HoTenSV ; //nguyen thi lan
struct SinhVien SV={‘sv01’,’nguyen thi lan’,0,6.0,7.5,8.0};
struct SinhVien
{
char MSSV[6] ;
char HoTenSV[30];
bool Phai ;
float Toan, Ly, Hoa;
};
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
192
192
Ví Dụ Minh Họa
Viết chương trình cho phép ñọc dữ liệu từ bàn
phím cho biến mẩu tin SinhVien và in biến mẩu tin ñó
lên màn hình
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
193
193
struct SinhVien
{
char MSSV[6] ;
char HoTenSV[30];

bool Phai ;
float Toan, Ly, Hoa;
};
SinhVien sv;
/* Hàm in lên màn hình 1 mẩu tin SinhVien*/
void NhapSV(SinhVien &sv)
{
cout<<"MSSV:";gets(sv.MSSV);
cout<<"Ho ten SV:"; gets(sv.HoTenSV);
cout<<"Phai (Nu:0 ; Nam:1):"; cin>>sv.Phai;
cout<<"Diem toan:"; cin>>sv.Toan;
cout<<"Diem ly:"; cin>>sv.Ly;
cout<<"Diem hoa:"; cin>>sv.Hoa;
}
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
194
194
/* Hàm in lên màn hình 1 mẩu tin SinhVien*/
void XuatSV(SinhVien sv)
{
cout<<"MSSV:"; puts(sv.MSSV);
cout<<"Ho ten sinh vien:"; puts(sv.HoTenSV);
if (sv.Phai==1)
cout<<"Gioi tinh: Nam";
else
cout<<"Gioi tinh : Nu";
cout<<"\nDiem toan:"<<sv.Toan;

cout<<"\nDiem ly:"<<sv.Ly;
cout<<"\nDiem hoa:"<<sv.Hoa;
}
void main()
{
cout<<"Nhap thong tin sinh vien:\n";
NhapSV(sv);
cout<<"\n\nXuat thong tin sinh vien:\n";
XuatSV(sv);
}
Written by: Dương Thành Phết

This is trial version
www.adultpdf.com
195
195
Nhập, xuất và tính tổng tọa ñộ 2 ñiểm
Ví Dụ Minh Họa
Written by: Dương Thành Phết

struct DIEM
{
int x, y;
};
struct DIEM D;
void Nhap (DIEM &d)
{
cout<<"Tung do : ";
cin>>d. x;
cout<<"Hoanh do : ";

cin>>d.y;
}
void Xuat (DIEM d)
{
cout<<"\nToa do diem : (" <<d.x<< ","<<d.y<<")"<<endl;
}
This is trial version
www.adultpdf.com

×