Khai báo - lý thuyết: kiểu bản ghi trang 74 sgk tin học 11

- Kiểu bản ghi là một kiểu dữ liệu có cấu trúc. Một bản ghi gồm các thành phần [gọi là trường], khác với các kiểu dữ liệu có cấu trúc khác [mảng và xâu], các trường có thể thuộc các kiểu dữ liệu khác nhau;

- Dữ liệu kiểu bản ghi dùng để mô tả các đối tượng có cùng một số thuộc tính mà các thuộc tính có thể có các kiểu dữ liệu khác nhau.

- Kiểu bản ghi là một kiểu dữ liệu có cấu trúc. Một bản ghi gồm các thành phần [gọi là trường], khác với các kiểu dữ liệu có cấu trúc khác [mảng và xâu], các trường có thể thuộc các kiểu dữ liệu khác nhau;

- Kiểu bản ghi cho phép mô tả nhiều đối tượng có cùng một số thuộc tính, có hữu ích cho nhiều bài toán quản lí;

- Ngôn ngữ lập trình đưa ra quy tắc, cách thức xác định.

- Tên kiểu bản ghi;

-Tên các thuộc tính [trường];

-Kiểu dữ liệu của mỗi trường;

-Cách khai báo biến;

-Cách tham chiếu đến trường.

1. Khai báo

- Các thông tin cần khai báo bao gồm tên kiểu bàn ghi, tên các thuộc tính, kiểu dữ liệu của mỗi thuộc tính.

type = record

:

:

end;

Sau khi có kiểu bản ghi, biến kiểu bản ghi có thể được khai báo như sau:

var

: ;

Ví dụ

Trong chương trình xử lí kết quả tốt nghiệp có thể sử dụng khai báo sau đây: const Max= 60; {gia thiet si so lop cao nhat la 60}

A, B: HocSinh;

Lop: array[1..Max] of HocSinh;

- Nếu A là biến kiểu bản ghi và X là tên một trường của A, thì để tham chiếu đến trường X, ta viết:

A.x

- Để tham chiếu đến điểm thi tin học của học sinh A ta viết:

A.Tin

type

Hocsinh = record

HoTen: string[30];

NgaySinh: string[10];

GioiTinh: boolean;

Tin, Toan, Li, Hoa, Van, Su, Dia: Heal;

End;

var

A, B: HocSinh;

Lop: array[1..Max] of HocSinh;

- Nếu A là biến kiểu bản ghi và X là tên một trường của A, thi để tham chiếu đến trường X, ta viết:

- Để tham chiếu đến điểm thi tin học của học sinh A ta viết:

A.Tin

2.Gán giá trị

Có hai cách để gán giá trị cho biến bản ghi:

Cách 1: Dùng lệnh gán trực tiếp: Nếu A và B là hai biến bản ghi cùng kiểu, thì ta có thể gán giá trị cùa B cho A bằng câu lệnh:

A:= B;

Cách 2: Gán giá trị cho từng trường: có thể thực hiện bằng lệnh gán hoặc nhập từ bàn phím.

Vi dụ: Chương trình nhập vào từ bàn phím thông tin của từng học sinh trong lớp, thực hiện xếp loại và đưa ra màn hình kết quả xếp loại học sinh:

program xep_loai;

USRS crt;

const max= 60;

type Hocsinh = record

hoten: string[30];

ngaysinh: string [10];

Diachi: string[50] ;

Toan, Van: real;

Xeploai : char; end;

var

Lop: array [ 1. .max] of hocsinh;

N,i: byte;

Begin

clrscr;

write['So luong hoc sinh trong lop N= ] ;

readln[N];

for i:= 1 to N do

begin

writeln[ 'Nhap so lieu ve hoc sinh thu',i,': '];

Write [Ho va ten: ]; readln [lop [i]. hoten];

Write [ Ngay sinh : ]; readln [lop [i].ngaysinh];

Write [ Dia chi : ]; readln [lop [i].Diachi];

Write [Diem Toan : ]; readln [lop [i]. Toan];

Write [Diem Van : ]; readln [lop [i]. Van];

If Lop [i]. Toan+Lop [i]. Van >=18

then Lop [i]. xeploai:=A;

if [Lop[i].Toan+Lop[i].Van>=14] and

Lop [i]. Toan+Lop [i]. Van =10] and

Lop [i]. Toan+Lop [i]. Van >=14

then Lop [i]. xeploai:=C;

if [Lop[i].Toan+Lop[i].Van

Chủ Đề