1. Kiến thức cần nắm vững– Hiểu về kiểu dữ liệu tệp, các thao tác với tệp như: mở tệp, đọc/ ghi dữ liệu, đóng tệp
– Biết cách viết hàm tự định nghĩa và xây dựng được hàm đơn giản để giải quyết bài toán.
2. Phần trắc nghiệmCâu 1: Dữ liệu kiểu tệp?
A) Được lưu trữ trên bộ nhớ ngoài
B) Được lưu trữ trên ROM
C. Chỉ được lưu trữ trên đĩa cứng
D. Được lưu trữ trên RAM.
Câu 2: Thứ tự các thao tác cơ bản khi làm việc với tệp là?
A) Đọc/ ghi dữ liệu -> Mở tệp -> Đóng tệp
B) Đọc/ ghi dữ liệu -> Đóng tệp -> Mở tệp
C) Mở tệp -> Đóng tệp -> Đọc/ ghi dữ liệu
D) Mở tệp -> Đọc/ ghi dữ liệu -> Đóng tệp
Câu 3: Chọn câu lệnh mở tệp TAMGIAC.INP để đọc và gán cho biến f, biết tệp TAMGIAC.INP cùng thư mục với tệp chương trình?
A) f = open(‘TAMGIAC.INP’,’w’)
B) f = open(‘TAMGIAC.INP’,’r’)
C) f = open(‘TAMGIAC.INP’,’a’)
D) f = open(TAMGIAC.INP’,’ab’)
Câu 4: Kiểu dữ liệu trả về mặc định khi đọc dữ liệu từ tệp là?
A) int
B) str
C) bool
D) float
Câu 5: Khi ghi dữ liệu vào tệp, nội dung phải là kiểu dữ liệu nào sau đây?
A) Kiểu số nguyên
B) Kiểu số thực
C) Kiểu xâu
D) Kiểu logic
Câu 6: Để đóng tệp f ta sử dụng lệnh nào dưới đây?
A) f.close()
B) f.write()
C) f.readline()
D) f.read()
Câu 7: <tên biến tệp>.write(<nội dung>) có ý nghĩa?
A) Đọc dữ liệu từ tệp
B) Mở tệp để đọc dữ liệu
C) Mở tệp để ghi dữ liệu
D) Ghi dữ liệu vào tệp.
Câu 8: Hãy chọn thứ tự hợp lí nhất để ghi nội dung ‘Hello World’ vào tệp DATA.OUT?
A) fout = open(‘DATA.OUT’,’w’); fout.write(‘Hello World’);
B) fout = open(‘DATA.OUT’,’r’); fout.write(‘Hello World’);
C) fout = open(‘DATA.OUT’,’r’); fout.readline(‘Hello World’);
D) fout = open(‘DATA.OUT’,’w’); fout.read(‘Hello World’);
Câu 9: Viết câu lệnh mở tệp DATA.INP để đọc, biết tệp DATA.INP ở ổ đĩa D trong thư mục HOC TAP?
A) f = open(‘D:HOC TAPDATA.INP’,’r’)
B) f = open(‘DATA.INP’,’r’)
C) f = open(‘D:HOC TAPDATA.INP’,’w’)
D) f = open(‘DATA.OUT’,’w’)
Câu 10: Trong ngôn ngữ lập trình Python, từ khóa dùng để khai báo hàm là?
A) function
B) procedure
C) def
D) define
Câu 11: Trong ngôn ngữ lập trình Python, từ khóa dùng để trả về giá trị của hàm là?
A) return
B) function
C) def
D) define
Câu 12: Phát biểu nào sau đây là sai?
A) Hàm có thể tham gia vào biểu thức để tính toán
B) Hàm là thủ tục khi trong thân chương trình không có câu lệnh return
C) Thủ tục không trả về giá trị, hàm có trả về giá trị
D) Thủ tục có thể tham gia vào biểu thức để tính toán
Câu 13: Trong ngôn ngữ lập trình Python, khi hàm có nhiều tham số thì các tham số cách nhau bởi dấu?
A) dấu phẩy
B) dấu chấm
C) dấu chấm phẩy
D) dấu cách
Câu 14: Trong ngôn ngữ lập trình Python, khi khai báo hàm thì danh sách tham số được đặt trong dấu ngoặc đơn, sau dấu ngoặc đơn sẽ là dấu?
A) dấu hai chấm
B) Dấu chấm
C) dấu chấm phẩy
D) dấu cách
Câu 15: Trong Python, hãy cho biết ý nghĩa của từ khóa return sử dụng trong hàm?
A) Chỉ trả về giá trị
B) Chỉ thoát khỏi hàm
C) Thoát khỏi chương trình chính
D) Trả về giá trị và thoát khỏi hàm
Câu 16: Trong Python, biến cục bộ là?
A) Biến khai báo trong chương trình con
B) Biến khai báo trong chương trình chính
C) Biến biến tự do không cần khai báo
D) Biến khai báo trong chương trình chính nhưng chỉ dùng cho chương trình con
Câu 17: Trong Python, biến toàn cục là?
A) Biến khai báo trong chương trình con
B) Biến khai báo trong chương trình chính
C) Biến khai báo trong chương trình chính nhưng chỉ dùng cho chương trình con
D) Biến tự do không cần khai báo
Câu 18: Cho hàm:
def sqr(x): return x**2
Cho biến số thực s , sau khi thực hiện lệnh: s = sqr(3); thì giá trị của s là?
A) 6
B) 32
C) 9
D) 2
Câu 19: Sau khi đã mở tệp DATA.OUT cho biến tệp f, để ghi tổng của 2 số nguyên a và b vào tệp DATA.OUT ta sử dụng câu lệnh nào sau đây?
A) f.write(str(a+b)
B) f = write(a+b)
C) f.write(int(a+b))
D) f.write(a+b)
Câu 20: Tệp văn bản?
A) là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.
B) cho phép tham chiếu đến dữ liệu cần truy cập bằng cách xác định trực tiếp vị trí của dữ liệu đó.
C) cho phép truy cập đến một dữ liệu nào đó trong tệp chỉ bằng cách bắt đầu từ đầu tệp và đi qua lần lượt tất cả các dữ liệu trước nó.
D) là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.
Câu 21: Chương trình con gồm có hai loại là?
A) Thủ tục và hàm
B) Biểu thức và hàm
C) Hằng và biến
D) Thủ tục và biểu thức
Câu 22: Giả sử ta có hàm để tìm số lớn nhất trong 2 số a và b như sau:
def max(a,b): if a>b : max = a else: max = b
Ta cần gọi hàm max trên như thế nào để tìm được số lớn nhất trong 3 số a, b, c?
A) max(Max(a,b),c);
B) max(a,b,c);
C) (max(a,b), max(c));
D) max(a ;b;c);
Câu 23: Trong Python, trong tệp DATA.INP gồm có một dòng duy nhất là 123456
Sau khi thực hiện đoạn chương trình dưới đây:
n = f.readline(); f = open(‘DATA.INP’,’r’) ;
sẽ ghi đúng giá trị của n?
A) 123456
B) ‘123456’
C) 123456E
D) f12345
Câu 24: Để đọc theo dòng và gán giá trị về biến line ta sử dụng lệnh nào sau đây?
A) line = f.read()
B) line = f.readline
C) line = f.read
D) line = f.readline()
Câu 25: Câu lệnh mở tệp DATA.INP để ĐỌC nào sau đây là đúng?
A) f = open(‘w’,’DATA.INP’)
B) f = open(‘DATA.INP’,’w’)
C) f = open(‘r’,’DATA.INP’)
D) f = open(‘DATA.INP’,’r’)
3. Phần tự luậnCâu 1: Viết chương trình đọc dữ liệu từ tệp UCLN.INP gồm 2 số nguyên dương cách nhau một dấu cách. Sau đó tìm UCLN của hai số nguyên dương đó và ghi kết quả tìm được vào tệp UCLN.OUT?
Câu 2: Viết chương trình đọc dữ liệu từ tệp SOLE.INP gồm một dòng chứa dãy các số nguyên dương cách nhau bởi dấu cách.
Đếm xem có có nhiêu số lẻ trong dãy các số nguyên dương đó và xuất kết quả ra tệp SOLE.OUT.
Câu 3: Viết chương trình nhập ba số nguyên dương a, b, c từ bàn phím lần lượt là độ dài đáy lớn, đáy bé và chiều cao của một hình thang. Tính diện tích hình thang và in kết quả vào tệp DATA.TXT
Câu 4: Cho hàm số f(x) = 5x3 + 2x2 + 3
Em hãy viết chương trình sử dụng HÀM để tính giá trị của các hàm số tại f(a) ; f(b) với a và b là các số được nhập vào từ bàn phím.
Câu 5: Viết chương trình tính tổng sau: S = 1! + 2! + … + n!, với n>2, n nguyên dương nhập từ bàn phím. Xuất kết quả tính được ra màn hình.