Cho biết hàm sau đây có chức năng gì: float T(float *m, int n) { float t = 0.0; for (int i = 0; i < n; i++) t += m[i]; return t; }
A -
Tìm phần tử lớn nhất trong mảng
B -
Tính giá trị trung bình của mảng
C -
Tính tổng các phần tử của mảng
D -
Tính tổng các số chẵn
2-
Kiểu float của ngôn ngữ Turbo C trên máy PC chiếm mấy byte trong bộ nhớ?
A -
4
B -
2
C -
1
D -
0
3-
Cho đoạn chương trình sau: int a = 5, b = 5, c; if (++a > ++b) c = 10; else if (++a > b++) c = 20; else c = 30; Cho biết khi thực hiện xong đoạn trình này c có giá trị là bao nhiêu?
A -
5
B -
10
C -
20
D -
30
4-
Cho khai báo sau: 1/ struct HocSinh { char HoTen[20]; float DTK; }; 2/ void Nhap(HocSinh *h) 3/ { printf("\nHo va ten : "); gets(h->HoTen); 4/ printf("\nDiem tong ket: "); 5/ float x; scanf("%f", &x); h->DTK = x; 6/ } Khi dịch chương trình thì dòng thứ 2 của đoạn này có lỗi: 'HocSinh cannot start a parameter declaration'. Cho biết một cách khắc phục.
A -
Thêm từ khoá typedef vào đầu dòng 1
B -
Thêm từ khoá typedef vào dòng có lỗi
C -
Sửa lại tên HocSinh thành chữ thường
D -
Xoá bỏ dòng 5
5-
Một mảng động gồm n phần tử số nguyên được cấp phát bằng lệnh sau: int *m = (int *)malloc(n*sizeof(int)); Nếu n = 10 thì mảng này chiếm bao nhiêu byte trong bộ nhớ?
A -
10 byte
B -
20 byte
C -
40 byte
D -
80 byte
6-
typedef struct CanBo { char *HoTen; int NamSinh;}; void Nhap(CanBo *cb) { char ht[20]; printf("\nHo va ten : "); gets(ht); cb->HoTen = (char *)malloc(strlen(ht)+1); strcpy(cb->Hoten, ht); printf("\nNam sinh : "); scanf("%d", &cb->NamSinh); } Với cách tổ chức dữ liệu như trên thì các bản ghi kiểu CanBo thực tế trong khi chương trình làm việc được cấp phát lượng bộ nhớ cố định hay không?
A -
Cố định
B -
Không cố định
C -
Tuỳ theo chiều dài của họ tên nhập vào
D -
Tất cả đều sai.
7-
Cho đoạn chương trình sau: int a = random(3); switch (a) { case 0:; case 1:; case 2: printf("Blue "); break; case 3: printf("White "); break; } Sau khi thực hiện cấu trúc trên đây sẽ thấy gì trên màn hình?
A -
Blue
B -
White
C -
Blue White
D -
Không có gì
8-
Đoạn chương trình sau đây có chức năng chuyển vị một ma trận vuông, tức là đảo hàng thành cột và cột thành hàng nhưng chưa được thử nghiệm: 1/ for (int i = 0; i < n; i++) 2/ for (int j = 0; j < n; j++) 3/ { int x = m[i][j]; 4/ m[i][j] = m[j][i]; 5/ m[j][i] = x; 6/ } Bạn có dự đoán gì về kết quả của đoạn chương trình này?
A -
Ma trận có thay đổi nhưng không chuyển vị
B -
Ma trận không hề thay đổi
C -
Ma trận chuyển vị đúng như ý đồ lập trình
D -
Ma trận chuyển vị không theo ý đồ lập trình
9-
Cho đoạn chương trình sau: int a = 5, b = 6, c = 7, d = 8; int k = a = b && c - d; k bằng bao nhiêu?
A -
0
B -
1
C -
2
D -
3
10-
Cho khai báo sau: typedef struct CanBo { char HoTen[20]; int NamSinh;}; void Nhap(CanBo *cb) { printf("\nHo va ten : "); gets(cb->HoTen); printf("\nNam sinh : "); scanf("%d", &cb->NamSinh); } Với cách tổ chức dữ liệu như trên thì các bản ghi kiểu CanBo thực tế trong khi chương trình làm việc được cấp phát lượng bộ nhớ cố định hay không?