Tải bản đầy đủ (.ppt) (16 trang)

Bài giảng C - Kiểu cấu trúc

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 (1.16 MB, 16 trang )





1
1
LẬP TRÌNH C++
LẬP TRÌNH C++
§9. Kiểu cấu trúc bản ghi
§9. Kiểu cấu trúc bản ghi




2
2
I. Khai báo kiểu bản ghi
I. Khai báo kiểu bản ghi

Cú pháp
Cú pháp
struct
struct
< tên_cấu_trúc >
< tên_cấu_trúc >
{
{
Các kiểu dữ liệu thành phần ;
Các kiểu dữ liệu thành phần ;
};
};



Khai báo biến :
Khai báo biến :
struct < tên_cấu_trúc > < tên_biến > ;
struct < tên_cấu_trúc > < tên_biến > ;

Ví dụ:
Ví dụ:
Kiểu dữ liệu DATE gồm các thành phần:
Kiểu dữ liệu DATE gồm các thành phần:
Thứ (thu): kiểu chuỗi.
Thứ (thu): kiểu chuỗi.
Ngày (ngay): kiểu số nguyên 1 byte.
Ngày (ngay): kiểu số nguyên 1 byte.
Tháng (thang): kiểu số nguyên 1 byte.
Tháng (thang): kiểu số nguyên 1 byte.
Năm (nam): kiểu số nguyên 2 bytes.
Năm (nam): kiểu số nguyên 2 bytes.




3
3

Ta định nghĩa DATE như sau:
Ta định nghĩa DATE như sau:


struct DATE

struct DATE
{
{
string thu;
string thu;
unsigned char ngay;
unsigned char ngay;
unsigned char thang;
unsigned char thang;
unsigned int nam;
unsigned int nam;
};
};
DATE x ; // Khai bao bien x co kieu du lieu DATE
DATE x ; // Khai bao bien x co kieu du lieu DATE


Hoặc :
Hoặc :
struct DATE x ;
struct DATE x ;

Để truy xuất một thành phần dữ liệu :
Để truy xuất một thành phần dữ liệu :
< Tên cấu trúc >.< Biến thành phần >;
< Tên cấu trúc >.< Biến thành phần >;
DATE x ; // khai bao bien x kieu DATE
DATE x ; // khai bao bien x kieu DATE
x.ngay = 5 ; // gan ngay bang 5
x.ngay = 5 ; // gan ngay bang 5





4
4

Bài tập :
Bài tập :
3.
3.
đọc và in ra thứ, ngày, tháng, năm
đọc và in ra thứ, ngày, tháng, năm
#include <iostream>
#include <iostream>
#include <string>
#include <string>
#include <algorithm>
#include <algorithm>
using namespace std;
using namespace std;
struct DATE
struct DATE
{
{
string thu;
string thu;
unsigned char ngay;
unsigned char ngay;
unsigned char thang;

unsigned char thang;
unsigned int nam;
unsigned int nam;
};
};
struct DATE d;
struct DATE d;




5
5
void main()
void main()
{
{
cout<<"Cho thu : ";
cout<<"Cho thu : ";
getline(cin,d.thu);
getline(cin,d.thu);
cout<<"Cho ngay : ";
cout<<"Cho ngay : ";
cin>>d.ngay;
cin>>d.ngay;
cout<<"Cho thang : ";
cout<<"Cho thang : ";
cin>>d.thang;
cin>>d.thang;
cout<<"Cho nam : ";

cout<<"Cho nam : ";
cin>>d.nam;
cin>>d.nam;
cout<<"Du lieu vua doc vao la : "<<endl;
cout<<"Du lieu vua doc vao la : "<<endl;
cout<<"Thu : "<<d.thu<<endl;
cout<<"Thu : "<<d.thu<<endl;
cout<<"Ngay : "<<d.ngay<<endl;
cout<<"Ngay : "<<d.ngay<<endl;
cout<<"Thang : "<<d.thang<<endl;
cout<<"Thang : "<<d.thang<<endl;
cout<<"Nam : "<<d.nam<<endl;
cout<<"Nam : "<<d.nam<<endl;
}
}
* Cách 2 : dùng hàm đọc vào và in ra ngày tháng năm
* Cách 2 : dùng hàm đọc vào và in ra ngày tháng năm




6
6
2. Đọc vào và in ra thông tin của một thí sinh thi đại học
2. Đọc vào và in ra thông tin của một thí sinh thi đại học
gồm: SBD, hoten, gioitinh, dtoan, dly, dhoa (dùng hàm)
gồm: SBD, hoten, gioitinh, dtoan, dly, dhoa (dùng hàm)

Ta có thể khai báo kiểu thí sinh như sau:
Ta có thể khai báo kiểu thí sinh như sau:

struct THISINH
struct THISINH
{
{
string SBD;
string SBD;
string hoten;
string hoten;
string gt;
string gt;
double dtoan;
double dtoan;
double dly;
double dly;
double dhoa;
double dhoa;
};
};
struct THISINH ts;
struct THISINH ts;

×