25 câu hỏi
Anh (Chị) hãy cho biết kết quả đoạn lệnh khi thu =2?
switch (thu) {
case 2:
cout << “Van, Toan”;
break;
case 3:
cout<< “Hoa, Ly”;
break;
default:
cout <<“Ngay nghi”;
break;
}
Van, Toan
Hoa, Ly
Ngay nghi
Lỗi biên dịch.
Anh (Chị) hãy cho biết kết quả đoạn lệnh sau khi color = DEN?
enum mausac { DEN = 3, LAM, LUC, TRANG };
mausac color;
char * t;
switch (color) {
case 0:
t = “Mau trang”; break;
case 1:
t =“Mau den”; break;
case 2:
t = “Mau lam”; break;
case 3:
t = “Mau luc”;
break;
default:
t = “Khong co trong danh sach mau”;
break;
}
cout << t;
Mau den
Mau lam
Mau trang
Mau luc
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
int s = 0; for (int i = 0; i
< 10; i++) s+=i; cout
<< s << endl;
>
45
0
55
50
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
int i = 0; int s = 0; for
(int i = 0; i < 10; i++)
s+=i; cout << i << end;
>
45
Chương trình báo lỗi.
55
0
Anh (Chị) hãy cho biết khối lệnh sai ở dòng nào?
1. int i=0;
2. do {
3. i += 1;
4. } while (i == 0); 5 . cout << i;
1
2 và 3
4
Không sai ở dòng nào cả
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
double i = 0, n = 10, s = 0;
while (i < n)
{ double s = s + n;
n--;
} cout <<s;
0
55
45
10
Anh (Chị) hãy cho biết chương trình sau thực hiện công việc gì?
#define length(a) (sizeof(a) / sizeof(*a))
int main() {
int mang[] = {12, 37, 48, 51, 2, 9};
int tk = 51,
i;
bool check = false;
for (i = 0; i < length(mang); i++)
{ if (mang[i] == tk)
{ check = true;
break;
}
}
if (check) cout << “Found “ << tk << “ at index “ << i << endl;
else cout <<“Not found”; return 0;
}
>
Tìm 1 phần tử trong mảng.
So sánh các phần tử mảng với nhau.
Tính tổng mảng.
Tìm phần tử lớn nhất.
Anh (Chị) hãy cho biết chương trình sai ở dòng nào?
1. define length(a) (sizeof(a) / sizeof(*a ))
2. int main() {
3. int mang[] = {12, 37, 48, 51, 2, 9};
4. int tk = 51, i;
5. bool check = false;
6. for (i = 0; i < length(mang); i++) {
7. if (mang[i] = tk) {
8. check = true;
9. break;
10. }
11. }
12. cout << i ;
14. return 0;
15.}
>
1, 3
1, 7
3, 5, 6
12, 14
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
char chuoi[] = “peter pan put a pepper into pen”;
int max = strlen(chuoi);
int number = 0;
for (int i = 0; i < max; i++)
{ if (chuoi[i] != 'p')
continue; number++; }
cout << number <<
endl;
>
7
8
9
Chương trình báo lỗi.
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
void indl (int *a) { cout << *a;
}
int main() {
int a = 10;
indl (&a);
return 0;
}
10
11
Địa chỉ của a
Địa chỉ của bộ nhớ đứng trước a.
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau nếu nhập chuỗi Rome từ bàn phím?
char str[40];
cin.getline (str,40);
if ( strcmp(str, “Juliet”) == 0) cout << “Same here”;
else cout <<str;
Same here
Rome
Chương trình báo lỗi.
Không in ra gì cả.
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
int i = 10; int
n = ++i%5
i = 10, n = 0
i = 11, n = 0
i = 10, n = 1
i = 11, n = 1
Đoạn Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
int s = 0; string str; for
(int i = 0; i < 5; i++) {
int k = 0; k += i; s = k;
}
str = ((k % 2) == 0) ? “true” : “false”;
cout << str << endl;
>
true
false
Chương trình lỗi.
Không in ra gì cả.
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
const int row = 3;
const int col = 4;
int seasonTemp[row][col] = {
{ 26, 34, 22, 17 },
{ 24, 32, 19, 13 },
{ 28, 38, 25, 20 }
} ;
int functionM (temp[row][col]) {
int m = 0;
for (int i = 0; i < row; i++)
for (int j = 0; j < col; j++)
if (temp[i][j] > m)
m = temp[i][j];
return m;
}
int main()
{ cout << functionM (seasonTemp) << endl; return 0;
}
>>
38
13
0
60
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
const int row = 3;
const int col = 4;
int seasonTemp[row][col] = {
{ 26, 34, 22, 17 },
{ 24, 32, 19, 13 },
{ 28, 38, 25, 20 }
} ;
int functionM (temp[row][col]) {
int m = 0;
for (int i = 0; i < row; i++)
for (int j = 0; j < col; j++)
if (temp[i][j] < m)
m = temp[i][j];
return m;
}
int main() { cout << functionM (seasonTemp) << endl; return 0;
}
>>>
38
13
0
60
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
string expletive = “Expletive “;
string PG13 = “deleted”;
string message = expletive + PG13;
Expletive deleted
Expletivedeleted
deletedExpletive
Lỗi biên dịch.
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
int BinSearch (char*item,char *table[],int n, int (*Sosanh)(const char*,const char*))
{ int bot = 0, top = n - 1, mid, cmp;
while (bot < top) { mid = (bot + top) / 2;
if ((cmp = Sosanh(item,table[mid])) == 0) return mid;
else if (cmp < 0) top = mid - 1;
else bot = mid + 1;
}
return -1;
}
int main() { char *cities[] = { “Boston”, “London”, “Sydney”, “Tokyo” };
cout << BinSearch (“Sydney”,cities,4,strcmp) << endl;
}
>>
1
2
true
Chương trình báo lỗi.
Anh (Chị) hãy cho biết đoạn chương trình sau thực hiện công việc gì?
int BinSearch (char *item,char *table[],int n, int (*Sosanh)(const char*,const char*)) {
int bot = 0, top = n - 1, mid, cmp;
while (bot < top) { mid = (bot + top) / 2;
if ((cmp = Sosanh(item,table[mid])) == 0) return mid;
else if (cmp < 0) top = mid - 1; else bot = mid + 1;
}
return -1;
}
int main() { char *cities[] = { “Boston”, “London”, “Sydney”, “Tokyo” };
cout << BinSearch (“Sydney”,cities,4,strcmp) << endl;
}
>>
Sắp xếp mảng tăng dần.
Sắp xếp mảng giảm dần.
Tìm kiếm một chuỗi trong mảng chuỗi ký tự.
Đếm xem có bao nhiêu thành phần trong mảng chứa chuỗi ký tự cho trước.
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
void functionS w (int *x, int *y) { int tmp = *x; *x =*y; *y = tmp;}
int main() {
int I = 10, j = 20;
functionSw (i,j);
cout << i << “, “ << j << endl;
}
10, 20
20, 10
0, 0
Lỗi biên dịch.
Anh (Chị) hãy cho biết đoạn lệnh sau thực hiện công việc gì?
char* ReChar (char* str) { int len = strlen (str);
char* ketqua = new char[len+1];
for (int i = 0; i< len; i++)
ketqua[i] = str[len-i-1];
ketqua[len] ='\0'; return ketqua;
}
int main() {
char *p = 178892”; cout << ReChar (p) << endl; return 0;
}
>
Chuyển đổi ký tự thành số.
Đảo ngược chuỗi ký tự.
Sắp xếp chuỗi ký tự.
In các chuỗi ký tự theo chiều tăng dần.
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
char* ReChar (char* str) { int len = strlen (str);
char* ketqua = new char[len+1];
for (int i = 0; i< len; i++) ketqua[i] = str[len-i-1];
ketqua[len] ='\0'; return ketqua;
}
int main() { char *p =178892”; cout << ReChar(p) << endl; return 0;
}
>
178892
298871
127889
988721
Anh (Chị) hãy cho biết, chương trình sau sai ở dòng nào?
1. char ReChar (char str) {
2. int len = strlen (str);
3. char ketqua = new char[len+1];
4. for (int i = 0; i < len; i++) ketqua[i] = str[len-i-1];
5. ketqua[len] = '\0';
6. return ketqua;
7. }
8. int main() {
9. char p[] = 178892”;
10. cout << ReChar (p) << endl;
11. return 0;
12.}
>
1, 3
5, 10
6
Chương trình không sai.
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
int val1, val2; int * pointer;
pointer = &val1; *pointer = 10; pointer = &val2;
*pointer = 20; cout << val1
* val2 << endl;
10 * 20
200
20
Chương trình báo lỗi.
Anh (Chị) hãy cho biết, tại dòng thứ 6, val2 có giá trị là gì?
1. int val1 = 5, val2 = 15;
2. int *p1, *p2;
3. p1 = &val1;
4. p2 = &val2;
5. *p1 = 10;
6. *p2 = *p1;
7. p1 = p2; 8 . *p2 = 20;
10
20
30
0
Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
int number[5] = { 10, 20, 30, 40, 50 };
int *p;
p = number;
p++;
*p += 60;
cout << number[1] << endl;
10
20
50
80
