Posted in C

Ôn tập lý thuyết C (có đáp án)

1)                                                                                                                                  

Câu lệnh sau có gì sai (Chọn một)

for(i=0;j=0, i<10; ++i,j+=i){

    k+=i*j+j*j;

}

 

A)  Phải có dấu chấm phẩy giữa j=0 và I<10.

B)  Nó phải có hơn một câu lệnh trong khối lệnh

C)  Nó sử dụng nhiều hơn một chỉ số lặp

D)  Phải có dấu phẩy giữa  i=0 và j=0 .

 

 

2)                                                                                                                                  

Khi khai báo một biến có nghĩa: (Chọn một)

 

A)  Vùng bộ nhớ nào đó sẽ được định vị

B)  Vùng bộ nhớ nào đó sẽ được định vị và một cái tên tượng trưng sẽ được dùng để tham chiếu tới vị trí bộ nhớ đó.

C)  Hạn chế sự thay đổi hay thêm vào chương trình.

D)  Một cái tên tượng trưng sẽ được dùng để tham chiếu tới một vị trí bộ nhớ.

E)  Không câu nào trong các câu trên

 

 

3)                                                                                                                                

Kết quả của đoạn mã chương trình sau là gì ? (Chọn một)

#include <stdio.h>

void main()

{           int a,b,n,i;

            a=1972;

            n=a%10;

            for(i=0;i<n;i++)

            {  b=a/10;

                printf(“%2d”,b);

                a=b;                       

            }          

}

 

 

A)  197197

 

B)  19719

 

C)  1919

 

 

 

4)                                                                                                                                   

Ngôn ngữ C không phải ngôn ngữ được phân loại mạnh (Chọn một)

 

A)  Đúng

B)  Sai

 

 

5)                                                                                                                                   

Trong C từ khóa không được sử dụng như là tên hàm. Do đó main() là tên hàm nên không phải là từ khóa (Chọn một)

 

A)  Đúng

B)  Sai

 

 

6)                                                                                                                                   

Số tham số và thứ tự của các tham số thật phải đúng như các tham số hình thức (Chọn một)

 

A)  Sai

B)  Đúng

 

 

7)                                                                                                                                  

Nếu một hàm đựoc gọi trước khi no được định nghĩa thì điều kiện là gì ? (Chọn một)

 

A)  Kiểu đầu vào của hàm phải là kiểu void.

B)  Trước khi gọi hàm nó phải được khai báo

C)  Kiểu trả về của hàm phải là kiểu void

D)  Hàm chỉ có thể trả về kiểu dữ liệu boolean.

 

 

8)                                                                                                                                  

Hàm printf() và scanf() thuộc vào loại _______ (Chọn một)

 

A)  Hàm sơ cấp

B)  Hàm thư viện

C)  Hàm thứ cấp

D)  Hàm do người dùng định nghĩa

E)  Hàm kiểu void

 

 

9)                                                                                                                                   

Một hàm không trả về giá trị thì không thể có mặt trong biểu thức (Chọn một)

 

A)  Sai

B)  Đúng

 

 

10)                                                                                                                               

Sau đây những hàm nào là hợp lệ (Chọn một)

 

A)  void divide (int a, int b){int c;c=a/b;return;}

B)  int divide (a, b){     int a,b,c;c=a/b;return c;}

C)  int divide (int a, int b){return a/b;}

D)  void divide (int a, int b){int c;c=a/b;return c;}

E)  void divide (int a, int b){return a/b;}

 

 

11)                                                                                                                               

Cách định dạng _____ để in ra một số nguyên có dấu trong hệ thập phân (Chọn một)

 

A)  %i

B)  %u

C)  %s

D)  %d

E)  %n

 

 

12)                                                                                                                               

#include <stdio.h>

main(){

double d=200.123456789;

printf(“no is : %0.5f”,d);

}

Kết qủa của đoạn chương trình trên là gì? (Chọn một)

 

A)  200.123456789

B)  200.1234

C)  200.12346

D)  Chương trình sẽ trả về lỗi vì kiểu dữ liệu của d là double nên phải sử dụng định dạng %d

E)  e.  200.12345

 

 

13)                                                                                                                               

Một câu lệnh switch được sử dụng để: (Chọn một)

 

A)  Chuyển từ biến này sang biến khác trong chương trình

B)  Chuyển giữa các hàm trong một chương trình

C)  Sử dụng biến chuyển

D)  Chọn một trong nhiều giá trị dựa trên các giá trị khác nhau của một biến đơn

 

 

14)                                                                                                                               

Vế phải của toán tử gán có thể là: (Chọn hai)

 

A)  Biểu thức

B)  Từ khóa

C)  Hằng số

D)  Không câu nào trong các câu trên

 

 

15)                                                                                                                             

#include<stdio.h>

main()  {

struct emp    {

unsigned id :1;

unsigned age :7;

unsigned salary:10;

} e1;

e1.id=1;

e1.age=65;

e1.salary=1000;

printf(“%d”,e1.salary);

printf(“,%d”,sizeof(struct emp));

}

 

Kết quả của đoạn mã chương trình trên là gì khi biên dich và chạy? (Chọn một)

 

A)  Lỗi biên dịch dòng 8,9,10 vì thành phần cấu trúc được khởi tạo không đúng

B)  Biên dịch thành công và chạy ra kết quả: 1000,6

C)  Biên dịch thành công và chạy ra kết quả: 1000,3

D)  Lỗi biên dịch dòng 4,5,6 vì cấu trúc khai báo không hợp lệ

E)  Biên dịch thành công nhưng gặp lỗi khi chạy chương trình

 

 

16)                                                                                                                               

Hàm nào mà mọi chương trình C đều phải có (Chọn một)

 

A)  init()

B)  main()

C)  start()

D)  return()

E)  exit()

 

 

17)                                                                                                                                

Mảng là tập hợp của các phần tử cùng kiểu nhưng khác tên (Chọn một)

 

A)  Đúng

B)  Sai

 

 

18)                                                                                                                                

Khi một hàm nhận tham số là một mảng, hàm đó không cần biết kích thước của mảng (Chọn một)

 

A)  Sai

B)  Đúng

 

 

19)                                                                                                                                

Mỗi một phần tử của mảng có thể xác định một cách duy nhất nhờ _______ (Chọn một)

 

A)  Tên của nó

B)  Chỉ số của nó

C)  Kiểu của nó

D)  Kích thước mảng

 

 

20)                                                                                                                                

Toán tử * là ngược với toán tử địa chỉ ? (Chọn một)

 

A)  Sai

B)  Đúng

 

 

21)                                                                                                                                

Giá trị số nào có liên quan tới vị trí bộ nhớ ? (Chọn một)

 

A)  Kiểu

B)  Địa chỉ

C)  Kích thước

 

 

22)                                                                                                                             

Chọn các phát biểu đúng về tham chiếu con trỏ trong C: (Chọn ba)

 

A)  Sử dụng con trỏ trong hàm ltiết kiệm không gian bộ nhớ

B)  Khi sử dụng con trỏ tham chiếu, giá trị của biến có thể thay đổi, nhưng địa chỉ của biến không thể thay đổi

C)  Sử dụng con trỏ trong hàm làm giảm thời gian chạy chương trình

D)  Những biến hình thức của hàm có thể được truy cập bằng cách sử dụng con trỏ trong hàm khác

E)  Một hàm có thể tham chiếu tới một biến cục bộ của hàm khác sử dụng con trỏ

 

 

23)                                                                                                                               

Nếu một biến con trỏ được sử dụng trước khi gán giá trị cho nó thì: (Chọn một)

 

A)  Nó sẽ chỉ tới địa chỉ bộ nhớ đầu tiên

B)  Nó sẽ chỉ tới một giá trị 0

C)  Nó sẽ chỉ tới một giá trị null

D)  Nó sẽ chỉ tới một giá trị không xác định

E)  Nó sẽ chỉ tới địa chỉ bộ nhớ cuối cùng

 

 

24)                                                                                                                             

Kết quả của đoạn mã chương trình sau là gì khi biên dịch và chạy ?

#include <stdio.h>

main() {

                        int oranges=10,mangoes=30;

                        int *fruits=&(oranges+mangoes);

                        printf(“Total number of fruits are %d”,*fruits);

}

(Chọn một)

 

A)  The code will generate a runtime error.

B)  Total number of fruits are 40

C)  Khi biên dịch chương trình bị lỗi

D)  Total number of fruits are 30

 

 

25)                                                                                                                               

int objects [3] [4] [20];

mảng objects được khai báo ở trên là tập hợp của _______  mảng một chiều (Chọn một)

 

A)  0

B)  240

C)  12

D)  80

E)  60

 

 

26)                                                                                                                               

Chọn tất cả các khai báo hợp lệ (Chọn hai)

 

A)  Account {      int ID; float bal;      }acc;

B)  struct Account { int ID; float bal;} acc;

C)  Account{ int ID; float bal }acc;

D)  struct Account { int ID, float bal;}acc;

E)  struct Account {      int ID; float bal;      }acc;

 

 

27)                                                                                                                               

Để định giá trị biểu thức, kiểu float được chuyển thành _____ (Chọn một)

 

A)  Long

B)  Double

C)  unsigned float

D)  unsigned double

 

 

 

1 AD      
2 B      
3 B      
4 B      
5 B      
6 B      
7 B      
8 B      
9 B      
10 AC      
11 AD      
12 B      
13 D      
14 AC      
15 C      
16 B      
17 B      
18 B      
19 B      
20 B      
21 B      
22 BCE      
23 D      
24 C      
25 C      
26 BE      
27 B      
         
         
         

 

Tác giả:

Thích thì chiều sao phải xoắn :))

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s