Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

CHƯƠNG TRÌNH CON

Total questions: 66

Worksheet time: 37mins

Name
Class
Date
1.

Khẳng định nào sau đây là đúng ?

a)

Cả thủ tục và hàm đều có thể có tham số hình thức

b)

Chỉ có thủ tục mới có thể có tham số hình thức

c)

Chỉ có hàm mới có thể có tham số hình thức

d)

Thủ tục và hàm nào cũng phải có tham số hình thức

2.

Biến cục bộ là gì?

a)

Biến được khai báo trong CTC nhưng được sử dụng trong chương trình chính.

b)

Biến được khai báo trong chương trình chính nhưng chỉ được sử dụng cho CTC.

c)

Biến được khai báo trong chương tŕnh con

d)

Biến tự do không cần khai báo

3.

Tham số hình thức của chương trình con là:

a)

Tham số thể hiện trong lệnh gọi CTC

b)

Tham số thể hiện khi khai báo CTC

c)

Tham số hình thức là tham số cục bộ

d)

Tham số hình thức là tham số toàn bộ

4.

Hàm và thủ tục khác nhau ở chổ

a)

Hàm trả về giá trị

b)

Thủ tục trả về giá trị

c)

Hàm trả về giá trị qua tên của nó

d)

Thủ tục trả về giá trị qua tên của nó

5.

Nói về cấu trúc của một chương trình con, khẳng định nào sau đây là không đúng?

a)

Phần đầu có thể có hoặc không có cũng được.

b)

Phần đầu và phần thân nhất thiết phải có, phần khai báo có thể có hoặc không.

c)

Phần khai báo có thể có hoặc không có tùy thuộc vào từng chương trình cụ thể.

d)

Phần đầu nhất thiết phải có để khai báo tên chương trình con.

6.

Các biến dùng chung cho toàn bộ chương trình được gọi là?

a)

Tham số thực sự.

b)

Biến cục bộ.

c)

Tham số h́nh thức.

d)

Biến toàn bộ.

7.

Chương trình con có bao nhiêu loại? (chương trình chính- chương trình phụ- chương trình hàm- chương trình thủ tục)

a)

1

b)

2

c)

3

d)

4

8.

Khẳng định nào sau đây là đúng khi nói về chương trình con (CTC)?

a)

Các CTC phải được khai báo ngay từ đầu của chương trình chính.

b)

Các CTC phải được khai báo sau Begin của chương trình chính.

c)

Các CTC được khai báo bất kỳ trong chương trình chính.

d)

Các CTC phải được khai báo ngay sau phần khai báo biến và trước Begin của chương trình chính.

9.

Trong chương trình, tham số được đưa vào khi gọi chương trình con được gọi là:

a)

Biến toàn cục

b)

Biến cục bộ

c)

Tham số hình thức

d)

Tham số thực sự

10.

Có mấy lợi ích khi dùng chương trình con (CTC)?

a)

2

b)

3

c)

4

d)

5

11.

Hãy chọn phương án ghép đúng . Kiểu của một hàm được xác định bởi

a)

A_ Kiểu của các tham số

b)

Kiểu giá trị trả về

c)

A_ Tên hàm

d)

A_ Địa chỉ mà hàm trả về

12.

Mô tả nào dưới đây về hàm là sai?

a)

Phải trả lại kết quả

b)

Phải có tham số

c)

Trong hàm có thể gọi lại chính hàm đó

d)

A_ Có thể có các biến cục bộ

13.

Nói về cấu trúc của một chương trình con, khẳng định nào sau đây là không đúng?

a)

Phần đầu và phần thân nhất thiết phải có, phần khai báo có thể có hoặc không.

b)

Phần khai báo có thể có hoặc không có tùy thuộc vào từng chương trình cụ thể.

c)

Phần đầu có thể có hoặc không có cũng được.

d)

Phần đầu nhất thiết phải có để khai báo tên chương trình con.

14.

Khẳng định nào sau đây là đúng?

a)

Một chương trình con nhất thiết phải có tham số hình thức.

b)

Một chương trình con nhất thiết phải có biến cục bộ.

c)

Một chương trình con nhất thiết phải có tham số hình thức, không nhất thiết phải có biến cục bộ.

d)

Một chương trình con có thể không có tham số hình thức và cũng có thể không có biến cục bộ.

15.

Khẳng định nào sau đây là đúng?

a)

Biến cục bộ là biến được dùng trong chương trình con chứa nó và trong chương trình chính.

b)

Biến cục bộ là biến chỉ được dùng trong chương trình chính.

c)

Biến cục bộ là biến chỉ được dùng trong chương trình con chứa nó.

d)

Biến toàn bộ chỉ được sử dụng trong chương trình chính và không được sử dụng trong các chương trình con.

16.

Khẳng định nào sau đây là đúng?

a)

Cả thủ tục và hàm đều có thể có tham số hình thức.

b)

Chỉ có thủ tục mới có thể có tham số hình thức.

c)

Chỉ có hàm mới có thể có tham số hình thức.

d)

Thủ tục và hàm nào cũng phải có tham số hình thức.

17.

Để khai báo hàm trong Pascal bắt đầu bằng từ khóa

a)

Program.

b)

Procedure.

c)

def

d)

Var.

18.

Để khai báo thủ tục trong Pascal bắt đầu bằng từ khóa

a)

Program.

b)

Procedure.

c)

Function.

d)

Var.

19.

Hãy chọn phương án ghép đúng. Cho thủ tục sau:

m = 3

def p() :

n = 2

Phạm vi của biến n là :

a)

Trong toàn bộ chương trình;

b)

Trong nội bộ thủ tục p;

c)

Trong toàn bộ tệp chương trình nguồn;

d)

Tùy thuộc vào vị trí sử dụng thủ tục p;

20.

Khai báo phần đầu một hàm là:

a)

def <tên CTC> (<DS các tham số>] :

b)

def (<DS các tham số>]<tên CTC> :

c)

def [<tên CTC> (<DS các tham số>] :

d)

def <tên CTC> (DS các tham số):

21.
Chương trình con là gì ?
a)
Là một đoạn trong chương trình chính ?
b)
Là một đoạn lệnh dùng để kiểm tra tính chất của một số nguyên.
c)

Là một đoạn lệnh thực hiện một số thao tác nhất định

d)
Là nhiều câu lệnh phía trên hàm main của chương trình chính.
22.
Chọn khai báo chương trình con đúng ?
a)
void P()
b)
void P();
c)
P : void()
d)
void P;
23.
Chọn khai báo đúng của hàm tính tổng của 2 số nguyên và trả về một số nguyên?
a)
int tong(int a, int b)
b)
double tong(int a, int b)
c)
void tong(int a, b)
d)
int tong(int a, b)
24.

Hàm sau dùng để làm gì ?

int tinh(int x) {return x*x*x;}

a)
Không trả về kết quả gì.
b)
Tính x lập phương
c)

Tính x bình phương

d)
Hàm chạy sinh lỗi
25.
Câu lệnh return trong chương trình con dùng để làm gì ?
a)
Kết thúc hàm.
b)

Kết thúc hàm và trả về kết quả cho hàm

c)
Ngắt hàm thành hai hàm khác
d)
Không có tác dụng gì.
26.
Biến toàn cục là gì?
a)
Là biến được khai báo ở chương trình chính (ngoài hàm main)
b)
Là biến được khai báo trong chương trình con
c)
Là biến mặc định của hệ thống
d)
Là biến của các chương trình con.
27.
Biến cục bộ là gì?
a)
Là các biến được khai báo bên trong chương trình con.
b)
Là các biến của chương trình chính
c)
Là các tham số hình thức của chương trình con và các biến được khai báo trong nó
d)
Là các đối tượng được khai báo bên ngoài chương trình con.
28.

Hàm sau có các biến cục bộ nào ?

int tinh(int a, int n)

{int res = 1;

return res*a*n;}

a)
res
b)
a, n
c)
res*a*n
d)
a, n, res
29.
Hàm abs(x), sqrt(x), sin(x)
a)
Là các hàm có trả về kết quả
b)
Là các hàm không trả về kết quả
c)
Là các hàm không có tham số
d)
Là các hàm có nhiều tham số
30.
Phát biểu nào là sai về lời gọi hàm.
a)

Khi gọi hàm bắt buộc phải truyền tham số cho hàm

b)
Lời gọi hàm có thể được thực hiện ở nhiều nơi trong chương trình
c)
Nếu hàm có tham số, cần truyền đủ, đúng tham số cho hàm trong lời gọi hàm
d)

Lời gọi hàm có thể xuất hiện trong chương trình chính và chương trình con khác.

31.

Để khai báo hàm trong Python bắt đầu bằng từ khóa

a)

A. Program

b)

B. Procedure

c)

C. Function

d)

D. def

32.

Đoạn chương trình sau là gì?

def M(x,y: real):

If a< b :

M=a

else: M=b;

a)

Hàm tìm min hai số

b)

Thủ tục tìm min hai số

c)

Hàm tìm max hai số

d)

Thủ tục tìm max hai số

33.

Trong các cú pháp sau đây dâu là cú pháp khai báo của chương trình con dạng hàm?

a)

function <tên hàm> [<Danh sách tham biến>]:<kiểu dữ liệu>;

b)

function <tên hàm> [<Danh sách tham số>];<kiểu dữ liệu>;

c)

function <tên hàm> [<Danh sách tham số>]:<kiểu dữ liệu>;

d)

funtion <tên hàm> [<Danh sách tham số>]:<kiểu dữ liệu>;

34.

Hàm khác thủ tục như thế nào?

a)

A. Thủ tục luôn trả về một giá trị thuộc kiểu xác định qua tên của hàm.

b)

B. Thủ tục và hàm luôn trả về một giá trị thuộc kiểu xác định qua tên của thủ tục và hàm.

c)

C. Hàm luôn trả về một giá trị thuộc kiểu xác định qua tên của hàm.

d)

D. Hàm không trả về một giá trị thuộc kiểu xác định qua tên của hàm.

35.

Với a là tham biến, b là tham trị thì khai báo phần đầu cho thủ tục nào sau đây là đúng? (a, b đều có kiểu dữ liệu Integer)

a)

A. Procedure M(Var a:Integer ; b: Integer );

b)

B. Procedure M(a,b: Integer );

c)

C. Procedure M(Var a,b: Integer );

d)

D. Procedure M(a: Integer ; Var b: Integer ) ;

36.

Cho biết giá trị tương ứng cho các biến a, b, c, d sau khi chạy thử chương trình :

Progam Vidu1;

Procedure Tong_hieu(a, b: Integer; Var c, d: Integer );

Begin

c:= a – b ;

d:= a + b ;

a:= a*b ;

End;

Begin clrscr;

a:= 10; b:= 3; c:= 5; d:= 6;

Tong­_hieu(a,b,c,d);

Write(a,b,c,d);

Readln;

End.

a)

30, 3, 7, 13

b)

10, 3, 7, 13

c)

10, 3, 5, 6

d)

30, 3, 5, 6

37.

Số nào được in ra màn hình khi thực hiện chương trình sau?

Program c3;

Var a,b:byte;

Procedure Thu1(Var a:byte);

Begin

a:= 2*a; b:=b+5;

End;

Begin

a:= 3; b:= 7; Thu1(b);

a:= a+b; Writeln(a);

Readln;

End.

a)

13

b)

19

c)

22

d)

20

38.

Số nào được in ra màn hình khi thực hiện chương trình sau?

program C4;

Var x:integer;

Procedure Thaydoi( x:integer);

Begin

x:=1;

end;

Begin

x:=0; Thaydoi(x); Writeln(x:3);

readln

End.

a)

1

b)

0

c)

1 0

d)

0 1

39.

Chương trình sau cho kết quả gì?

Program VD5;

Var a: Byte;

Function F(Var x:Byte):Byte;

Begin

x:=x+1; F:=x;

End;

Begin

a:=5; Writeln(F(a)+F(a));

Readln;

End.

a)

10

b)

11

c)

12

d)

13

40.

Với đầu thủ tục:

procedure N( x : integer ; var y : integer );

m là biến nguyên, các lời gọi sau đây lời gọi nào là hợp lệ?

a)

N(m,m+3);

b)

N(2,m);

c)

N(m+1,4);

d)

N(2,3*m+5);

41.

Chương trình con là ... mô tả một số thao tác nhất định và có thể được thực hiện từ ... trong chương trình.

(a)  

42.

Lợi ích của chương trình con sẽ ... được việc phải viết lặp đi lặp lại các dãy lệnh.

(a)  

43.

Sử dụng chương trình con sẽ ... việc thực hiện các chương trình lớn.

(a)  

44.

Người lập trình có thể sử dụng các kết quả được thực hiện bởi chương trình con mà ... đến các chương trình con đó được cài đặt như thế nào.

(a)  

45.

#include <iostream>

using namespace std;

float d,r;

bool Kiemtra()

{

bool kt=(d<=0)||(r<=0);

return kt;

}

int main()

{

cout<<"Nhap hai so d,r: ";

cin>>d>>r;

while (Kiemtra())

{

cout<<"Moi nhap lai!";

cin>>d>>r;

}

return 0;

}

Chương trình trên ta khai báo chương trình con tên là gi? Đó là hàm hay thủ tục?

4 lines
46.

Cho chương trình sau:

#include <iostream>

using namespace std;

float a,b,c,d,TLuythua;

int m,n,p,q;

float Luythua(float x, int k)

{

float lt=1.0;

for(int i=1;i<=k;i++)

lt*=x;

return lt;

}

int main()

{

cout<<"Nhap cac so theo thu tu a,b,c,d,m,n,p,q: "<<endl;

cin>>a>>b>>c>>d>>m>>n>>p>>q;

TLuythua=...(a,n)+...(b,m)+...(c,p)+...(d,q);

cout<<"Tong luy thua la: "<<TLuythua;

return 0;

}

Em hãy điền vào dấu (...) để hoàn thiện chương trình trên?

(a)  

47.

Chương trình con trong Python là gì?

a)

Một chương trình nhỏ có thể chạy độc lập

b)

Một đoạn chương trình có tên và thực hiện một nhiệm vụ cụ thể

c)

Một biến đặc biệt dùng để lưu trữ dữ liệu

d)

Một loại vòng lặp

48.

Cách khai báo một hàm trong Python đúng là?

a)

function tên_hàm (tham số):

b)

def tên_hàm (tham số):

c)

define tên_hàm (tham số):

d)

procedure tên_hàm (tham số):

49.

Khi khai báo hàm trong Python, phần thân hàm phải được viết như thế nào?

a)

Cách lề 4 khoảng trắng hoặc một tab

b)

Viết liền ngay sau dấu :

c)

Không cần cách lề

d)

Được đặt trong dấu {}

50.

Hàm có thể nhận tham số trong Python được gọi là?

a)

Hàm không có đối số

b)

Hàm tĩnh

c)

Hàm có đối số

d)

Hàm trống

51.

Trong Python, cú pháp nào dưới đây dùng để gọi hàm hello()?

a)

call hello

b)

invoke hello

c)

run hello

d)

hello()

52.

Khi gọi hàm, dữ liệu có thể được truyền vào thông qua?

a)

Biến toàn cục

b)

Danh sách tham số trong lời gọi hàm

c)

Câu lệnh input()

d)

Các vòng lặp

53.

Trong Python, câu lệnh nào dưới đây trả về giá trị từ hàm?

a)

return giá_trị

b)

exit giá_trị

c)

yield giá_trị

d)

output giá_trị

54.

Một hàm có thể trả về bao nhiêu giá trị trong Python?

a)

Chỉ một giá trị

b)

Chỉ nhiều giá trị

c)

Một hoặc nhiều giá trị

d)

Không thể trả về giá trị

55.

Khi gọi một hàm, nếu không truyền đủ số lượng tham số thì sẽ xảy ra điều gì?

a)

Lập trình viên được cảnh báo

b)

Python tự động điền giá trị mặc định

c)

Xuất hiện lỗi và chương trình dừng chạy

d)

Python bỏ qua tham số thiếu

56.

Thư viện trong Python là gì?

a)

Một tập hợp các biến toàn cục

b)

Một tập hợp các hàm có sẵn để sử dụng

c)

Một tập hợp các câu lệnh lặp

d)

Một tập hợp các biến và danh sách

57.

Cách nào sau đây kết nối thư viện math trong Python?

a)

connect math

b)

import math

c)

include math

d)

attach math

58.

Trong Python, thư viện math cung cấp hàm nào sau đây?

a)

print()

b)

sqrt()

c)

input()

d)

open()

59.

Hàm gcd() trong thư viện math có chức năng gì?

a)

Tính căn bậc hai

b)

Tìm số nguyên tố

c)

Tìm ước chung lớn nhất

d)

Tìm số chẵn nhỏ nhất

60.

Khi một hàm có tham số, giá trị nào sẽ được truyền vào khi gọi hàm?

a)

Giá trị cố định được gán trong hàm

b)

Giá trị được truyền từ chương trình gọi

c)

Giá trị mặc định của Python

d)

Giá trị ngẫu nhiên do Python chọn

61.

Điều nào đúng về tham số trong hàm Python?

a)

Tham số luôn có giá trị mặc định

b)

Tham số chỉ có thể là kiểu số

c)

Có thể có hoặc không có tham số

d)

Phải luôn có ít nhất một tham số

62.

Khi một hàm có nhiều tham số, thứ tự truyền tham số phải tuân theo điều gì?

a)

Tùy ý, Python tự sắp xếp lại

b)

Phải đúng thứ tự khai báo trong hàm

c)

Chỉ cần đủ số lượng tham số

d)

Phải truyền tất cả tham số cùng một kiểu dữ liệu

63.

Câu lệnh nào dưới đây đúng để gọi hàm tinh_tong(a, b) với a = 5, b = 10?

a)

tinh_tong(a: 5, b: 10)

b)

tinh_tong(a = 5; b = 10)

c)

tinh_tong(5, 10)

d)

tinh_tong{5, 10}

64.

Khi một hàm có return, điều gì sẽ xảy ra sau khi gặp return?

a)

Chương trình kết thúc

b)

Hàm dừng thực hiện và trả về giá trị

c)

Python tự động gọi lại hàm

d)

Python tiếp tục chạy các lệnh trong hàm

65.

Nếu một hàm không có return, giá trị trả về mặc định của nó là?

a)

0

b)

None

c)

False

d)

Chuỗi rỗng ""

66.

Trong Python, một hàm có thể gọi một hàm khác bên ngoài nó không?

a)

Có, miễn là hàm đó đã được định nghĩa

b)

Không, chỉ có thể gọi hàm trong cùng một lớp

c)

Có, nhưng chỉ với hàm tĩnh

d)

Không, điều này sẽ gây lỗi