A: Hàm phải được kết thúc với 1 câu lệnh return B: Phải có ít nhất 1 câu lệnh return cho hàm
C: Các câu lệnh return được phép nằm ở vị trí bất kỳ trong thân hàm
D: Không cần khai báo kiểu giá trị trả lại của hàm nếu hàm không có lệnh return
7272 72
12. Chọn câu sai trong các câu sau đây:
A: Số tham số thực sự phải bằng số tham số hình thức trong lời gọi hàm
B: Các biến cục bộ trong thân hàm được chương trình dịch cấp phát bộ nhớ
C: Các tham số hình thức sẽ được cấp phát bộ nhớ tạm thời khi hàm được gọi
D: Kiểu của tham số thực sự phải bằng kiểu của tham số hình thức tương ứng với nó trong lời gọi hàm
13. Để thay đổi giá trị của tham biến, các đối của hàm cần khai báo dưới dạng:
A: biến bình thường và tham đối được truyền theo giá trị B: biến con trỏ và tham đối được truyền theo giá trị
C: biến bình thường và tham đối được truyền theo địa chỉ D: biến tham chiếu và tham đối được truyền theo giá trị
BB
BB
7373 73
Câu hỏi và bài tập
Hãy cho biết trị in ra màn hình của các biến x, y, và z của các chương trình sau: #include <iostream.h> void mul(int&,int,int&); int main( ) { int x = 4, y = 3, z = 2; mul( y, z, x ); cout << "\nX = " << x; cout << "\nY = " << y; cout << "\nZ = " << z; return 0; }
void mul( int & x,int y, int & z ) { x *= y;
y *= z;z *= x; z *= x; }
7474 74 Hãy cho biết trị in ra màn hình của các biến x, y, và z của các chương trình sau:
#include <iostream.h>
void f( int x, int & y, int z ); void g( int & x, int y, int & z ); int main() { int x = 2, y = 3, z = 4; f( y, z, x ); cout << "\nX = " << x; cout << "\nY = " << y; cout << "\nZ = " << z; return 0; }
void f( int x, int & y, int z ) { g( z, y, x ); x += y; y += z; z += x; }
void g( int & a, int b, int & c ) {
a *= b; b *= c; c *= a; }
BB
BB
7575 75