Ответы на курс: Программирование на языке C++
Выберите все правильные ответы. Число -1 можно хранить в переменной типа
 |
signed short int |
|
unsigned char |
|
unsigned short int |
 |
signed char |
 |
float |
Выберите все правильные ответы. Алфавит языка C++ включает в себя:
|
директивы препроцессора |
 |
латинские буквы |
|
лексемы |
 |
символы !, ?, * |
Выберите все правильные ответы. Элементарные конструкции (лексемы) языка C++ включают в себя:
 |
имена |
 |
скобки |
 |
числа |
|
выражения |
Выберите все правильные ответы. Алфавит языка C++ включает в себя базовый набор символов:
 |
латинские буквы |
 |
цифры от 0 до 9 |
|
русские буквы |
Выберите все правильные ответы. Элементарные конструкции (лексемы) языка C++ включают в себя:
 |
идентификаторы |
|
двоичные числа |
|
выражения |
 |
разделители |
Переменная типа unsigned char может принимать значения
|
от -128 до 127 |
 |
символов c кодами от 0 до 32 |
 |
символов английского алфавита и цифр |
Выберите все правильные ответы. Алфавит языка C++ включает в себя:
 |
цифры от 0 до 9 |
 |
прописные латинские буквы |
|
русские буквы |
 |
символы (, ?, % |
Выберите все правильные ответы. Элементарные конструкции (лексемы) языка C++ включают в себя:
|
двоичные числа |
 |
знаки операций |
 |
разделители |
 |
имена |
Выберите все правильные ответы. Алфавит языка C++ включает в себя:
 |
символы !, ?, * |
 |
латинские буквы |
 |
символы +, =, * |
|
русские буквы |
Выберите все правильные ответы. Элементарные конструкции (лексемы) языка C++ включают в себя:
 |
строковые константы |
|
выражения |
|
операторы |
 |
идентификаторы |
Выберите все допустимые в C++ константы.
 |
-7.12e-13 |
 |
00 |
 |
‘Ж’ |
 |
0001 |
|
0xEFG1 |
Выберите все правильные ответы. В переменной типа signed short int можно хранить число
Выберите все правильные утверждения.
 |
в выражении можно использовать операнды булевского типа |
 |
результат операции сложения действительного и целого числа — действительный |
|
результат операций сравнения действительных чисел — целый |
|
результат стандартных функций sin и cos с аргументом целого типа — целый |
Чему равно значение выражения (! a && ( b || c)), где a, b и с — величины типа bool, имеющие значения true, true и false соответственно?
 |
false |
|
true |
Чему равно числовое значение выражения e/2*a-abs(e)*1e0 при e = 4, a = 2?
 |
0 |
|
3 |
|
1 |
Какие выражения не содержат синтаксических ошибок?
|
Sin/^2*x+0,2 |
 |
0xEEEE*1.34E-2/i/2 |
|
cos(3a+1*abs(x)) |
|
cos(3*a+1*abs(x))) |
Выберите правильные утверждения:
 |
целой переменной можно присвоить вещественную константу |
|
целой константе можно присвоить целую переменную |
 |
целой переменной можно присвоить целую константу |
|
целой константе можно присвоить вещественную переменную |
Чему равно значение выражения (! ( a && b || c)), где a, b и с — величины типа bool, имеющие значения true, true и false соответственно?
|
true |
 |
false |
Чему равно значение выражения (! ( a && b ) || c), где a, b и с — величины типа bool, имеющие значения true?
 |
true |
|
false |
Какие выражения не содержат синтаксических ошибок?
|
a*exp(t)\(2t) |
 |
((cos(3*a+1.*abs(x)))) |
 |
0XCC00*.34E-4/_do/k-2 |
|
sin(abs(0.6(e*3)) |
Поразрядные операции &, |, ^ и ~ применимы к
|
операндам действительного типа |
 |
операндам целого типа |
|
операндам булевского типа |
Что будет выведено на экран в результате работы программы (учитывая формат вывода)?
#include
main()
{
int i;
float t;
i = 1;
t = 5;
printf("%3.1f%d%2d", t, i, i);
}
|
1.01 5 |
|
51 1 |
 |
5.01 1 |
Найдите операторы вывода, не содержащие ошибок (int d; float x,y)
 |
printf («|%4.2d|%6.2f|%6.2f|»,d,x,y); |
|
printf («|%4d|%6.2f|%6.2f|»,x,y,d); |
 |
printf («|%4d|%6.2f|%6.2f|»,d,x,y); |
 |
printf («|%4d|%6.2f|%6.2f|»,d,x,x*x); |
Выберите правильные ответы. Можно ли присвоить значения
 |
целого типа — булевской переменной |
 |
целого типа — символьной переменной |
|
булевского типа — целой константе |
 |
целого типа — вещественной переменной |
Выберите все правильные ответы. Можно ли присвоить
 |
целую переменную — вещественной переменной |
|
целой константе — целую константу |
 |
булевской переменной — булевскую константу |
 |
вещественной переменной — целое выражение |
Найдите операторы вывода, не содержащие ошибок (int k; float x,y)
 |
printf («%4.2f %d»,y, k); |
|
printf («%f %f», x, k); |
 |
printf («%f %f», x, k * y); |
|
printf («%d %f», x, k); |
В условном операторе между ключевыми словами if и else после выражения в скобках может находиться
|
не больше двух операторов |
 |
любой простой или составной оператор |
|
любой оператор, кроме оператора перехода |
 |
составной оператор |
Чему будет равно значение переменной m после выполнения программы?
main()
{
int k;
int m;
m = 0;
for (k = 1; k <= 2; k++)
++m; ++m;
}
 |
3 |
|
1 |
|
4 |
Какое число получится в результате работы программы?
#include <stdio.h>
#include <math.h>
main()
{
const int a[8] = {3,8,0,-6,0,-1,-9,3};
int i,k;
k = abs(a[7]);
for (i = 0; i < 8; i++)
if (abs(a[i]) > k) k = a[i];
printf("%d",k);
}
|
2 |
 |
3 |
|
0 |
Какое число получится в результате работы программы?
#include <stdio.h>
main()
{
const int a[8] = {3,8,0,-6,0,-1,-9,3};
int i,k;
k = 1;
for (i = 7; i >= 0; i--)
if (a[i] == 0) k = i;
printf("%d",k);
}
|
0 |
 |
2 |
|
-2 |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
main(){
const char a[] = "abcrcaab";
int i; char k;
k = 'b';
for (i = 0; i < 8; i++)
if (a[i] < k) printf("%c",k);
}
|
ccc |
 |
bbb |
|
aaa |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
main()
{
const char a[] = "abcra";
int i; char k;
k = 'c';
for (i = 1; i < 5; i++) {
if (a[i] < k) k = a[i];
printf("%c",k);
}
}
 |
bbba |
|
bbab |
|
bbaa |
Чему будет равно значение переменной А после выполнения фрагмента программы, если В = 5?
A = 2;
if (В <= 4)
C = 1;
else
{ C = 0;
A = C;
}
|
1 |
 |
0 |
|
2 |
Какое число получится в результате работы программы?
#include <stdio.h>
#include <math.h>
main()
{
const int a[8] = {3,8,0,-6,0,-1,-9,3};
int i,k;
k = abs(a[7]);
for (i = 0; i< 8; i++)
if (abs(a[i]) > k) k = abs(a[i])- 2;
printf("%d",k);
}
|
1 |
|
20 |
 |
7 |
Какое число получится в результате работы программы?
#include <stdio.h>
#include <math.h>
main()
{
const int a[8] = {3,8,0,-6,0,-1,-9,3};
int i,k;
k = abs(a[7]);
for (i = 0; i < 8; i++)
if (abs(a[i]) < k) k = abs(a[i]);
printf("%d",k);
}
|
1 |
 |
0 |
|
20 |
Какое значение получит «p[0]» в данном примере?
int a[2][3]={{1,2,3},{7,8,9}};
int *p=&a[0][2];
p+=3;
|
4 |
|
7 |
 |
9 |
|
1 |
Чему будет равно значение переменной A после выполнения фрагмента программы, если B = 5 ?
if (В <= 4)
C = 1;
else C = 0;
A = C;
 |
0 |
|
2 |
|
1 |
Какое число получится в результате работы программы?
#include <stdio.h>
#include <math.h>
int main()
{
const int a[8] = {3,8,0,-6,0,-1,-9,3};
int i,j,k;
k = 0; j = 4;
for (i = 0; i < 8; i++)
if (a[i] > j) k = abs(a[i]);
printf("%d",k);
}
 |
8 |
|
2 |
|
18 |
Какое из следующих утверждений неправильное?
|
доступ в объединениях по умолчанию public |
|
объединение может иметь конструктор и другие методы, только не статические |
|
элементами объединения не могут быть объекты, содержащие конструкторы и деструкторы |
|
в анонимном объединении нельзя описывать методы |
|
объединение не может участвовать в иерархии классов |
 |
в объединениях можно явным образом использовать спецификаторы доступа |
Чему будет равно значение переменной a после выполнения фрагмента программы, если b = 2?
a = 1;
if ((b < 0) || (b > 1)) a = 3;
if (b > 5) a = 5;
|
0 |
|
2 |
 |
3 |
Чему будет равно значение переменной m после выполнения программы?
int main ()
{
int k;
int m;
k = 0; m = 0;
while (k < 3)
++k;
++m;
return m;
}
|
5 |
 |
1 |
|
0 |
Чему будет равно значение переменной m после выполнения программы?
main()
{
int k;
int m;
m = 1;
for (k = 1; k <= 2; k++)
{
++m; k+=2;
}}
|
3 |
|
0 |
 |
2 |
Какое число получится в результате работы программы?
#include <stdio.h>
main()
{
const int a[8] = {3,8,0,-6,0,-1,-9,3};
int i,k;
k = a[0];
for (i = 1; i < 8; i++)
if (a[i] > k) k = a[i];
printf("%d",k);
}
|
7 |
 |
8 |
|
9 |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
main(){
const char a[] = "abcrcaab";
int i; char k;
k = 'c';
for (i = 0; i < 8; i++)
if (a[i] <= k) {
k = a[i];
printf("%c",k);
}
}
 |
aaa |
|
bbb |
|
rrr |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
const char a[] = "abcra";
int i; char k;
main()
{
k = 'c';
for (i = 1; i < 5; i++)
if (a[i] >= k) {
k = a[i];
printf("%c",k);
}
}
|
ac |
|
rc |
 |
cr |
Чему будет равно значение переменной a после выполнения фрагмента программы, если b = 5?
a = 1;
if ((b > 0) && (b < 2)) a = 3;
if (b > 5) a = 5;
|
5 |
|
3 |
 |
1 |
Заголовок функции имеет вид: void P(int a, float b, char& c); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей функции описаны так: float a,b; int c,d; char e;
 |
P(c,c,e); |
 |
P(c%d,sin(d)/3.14,e); |
 |
P(d,a-b,e); |
|
P(a,b,c); |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
void f(char* a, char* b)
{
a[1] = b[1]; b[2] = a[2];
}
int main()
{
char a[]="abcd";
char b[]= "opr";
f(a,b);
printf ("%s%s", a, b);
return 0;
}
 |
apcdopc |
|
doapca |
|
apcdopp |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
int a, b, c, d;
void f( int a, int& c, int& d)
{
int b;
a = 5; c = 7; b = 9;
}
int main()
{
a = 1; c = 1; b = 1;
f(a,c,b);
printf ("%d|%d|%d",a,c,b);
return 0;
}
|
7|1|1 |
|
7|7|1 |
 |
1|7|1 |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
int a, b, c, d;
void f( int& a, int& c, int& d)
{
int b;
a = 5; c = 7; b = 9;
}
int main()
{
a = 1; c = 1; b = 1;
f(a, b, c);
printf ("%d|%d|%d",a,c,b);
return 0;
}
 |
5|1|7 |
|
1|9|7 |
|
9|5|7 |
Параметр функции описан как «int& a». Соответствующий ему аргумент может быть:
|
выражением типа int |
|
только переменной типа int с именем а |
|
константой типа int |
 |
переменной типа int |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
int a, b, c, d;
void f( int a, int& c, int& d)
{
int b;
a = 5; c = 7; b = 9;
}
int main()
{
a = 1; c = 1; b = 1;
f(b,a,c);
printf ("%d|%d|%d",a,c,b);
return 0;
}
 |
7|1|1 |
|
1|1|1 |
|
7|7|1 |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
void f(char& a, char d)
{
a = d; d = a;
}
int main()
{
char a[] = "глаз";
f(a[0],a[3]);
puts(a);
return 0;
}
|
злаг |
 |
злаз |
|
злаа |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
int a, b, c, d;
void f( int& a, int c, int& d)
{
int b;
a = 5; c = 7; b = 9;
}
int main()
{
a = 1; c = 1; b = 1;
f(a,b,c);
printf ("%d|%d|%d",a,c,b);
return 0;
}
|
1|1|5 |
 |
5|1|1 |
|
5|5|1 |
Что будет выведено на экран в результате работы программы?
#include <stdio.h>
void f(char* a, char* b)
{
a = b; b = a;
}
int main()
{
char a[]="abcde";
char b[]= "opr";
f(a,b);
puts(a);
return 0;
}
 |
abcde |
|
abdec |
|
acbde |
Какое из следующих утверждений истинно?
 |
перегруженные функции должны отличаться типом параметров |
|
перегруженные функции должны отличаться именами параметров |
|
перегруженные функции должны отличаться типом возвращаемого значения |
Параметр функции описан как «const int a». соответствующий ему аргумент может быть:
 |
выражением целого типа |
 |
переменной целого типа |
|
только переменной типа int с именем а |
|
выражением любого типа |
Заголовок функции имеет вид: void f(int& a, float b, char c); Укажите правильные варианты вызова функции, если переменные в вызывающей функции описаны так: int a; char b; float d,x;
 |
f(a,a,b); |
|
f(2,d,b); |
 |
f(a,x,’b'); |
 |
f(a,d-x/2,b); |
Стиль ООП рекомендует объявлять поля объектов
|
с директивой global |
|
с директивой public |
|
с директивой local |
 |
с директивой private |
|
без директив |
Какое из следующих утверждений правильное?
|
поля класса могут быть описаны с модификатором register |
 |
поля класса могут быть описаны с модификатором static |
|
поля класса могут быть описаны с модификатором auto |
|
поля класса могут быть описаны с модификатором extern |
Какие из следующих утверждений правильные?
|
поля класса могут быть описаны с модификатором extern |
 |
поля класса могут быть указателями на сам класс |
|
поля класса не могут быть ссылками на сам класс |
|
поля класса могут быть описаны с модификатором register |
Какие из следующих утверждений верные?
 |
внутри локального класса можно использовать внешние функции |
 |
методы локального класса не могут быть описаны вне класса |
|
локальный класс может иметь статические элементы |
 |
внутри локального класса можно использовать элементы перечислений из области, в которой он описан |
Почему конструктор копирования ДОЛЖЕН иметь в качестве параметра ссылку?
|
потому что функция-член класса может иметь в качестве параметра только ссылку. |
|
потому что переменная, передаваемая по ссылке, может быть изменена. |
|
потому что использование ссылки дает более эффективный код. |
 |
потому что иначе при передаче параметра по значению конструктор будет вызываться рекурсивно. |
Какой из операторов нужно использовать для того, чтобы инициализировать значение p адресом объекта ob для приведенного ниже кода?
class myclass
{
int a;
public:
myclass(int x);
};
myclass::myclass(int x) { a = x;}
int main()
{
myclass ob(120);
myclass *p;
return 0;
}
|
*p = *ob; |
 |
p = &ob; |
|
p = *ob; |
|
*p = myclass *ob; |
|
p = ob; |
Какие из следующих утверждений правильные?
 |
поля класса не могут иметь тип самого класса |
 |
поля класса могут быть указателями на сам класс |
|
поля класса могут быть описаны с модификатором auto |
|
поля класса могут быть описаны с модификатором extern |
Какое из следующих утверждений верное?
|
в конструкторах нельзя задавать значения параметров по умолчанию. |
|
конструкторы наследуются. |
 |
конструктор не возвращает значение. |
|
конструктор возвращает значение типа void. |
Для приведенного ниже кода при вызове функции Func программа аварийно завершается. В чем причина ошибки?
class Foo
{
char *buf;
public:
Foo(char *b = "default") {
buf = new char[strlen(b) + 1];
strcpy(buf, b);
}
~Foo() {
delete[] buf;
}
};
Foo Func(Foo f) {
return f;
}
 |
в классе отсутствует конструктор копирования. |
|
значение конструктора по умолчанию имеет тип char*. |
|
функция должна возвращать Foo& (ссылку). |
|
требуется переопределить операцию =. |
|
выделяется недостаточный объем памяти. |
Какое свойство ООП позволяет скрыть от других частей программы детали реализации объекта?
|
полиморфизм |
 |
инкапсуляция |
|
наследование |
|
абстрагирование |
Какие из следующих утверждений верные?
|
константный метод может вызываться только для константных объектов. |
|
константный метод может изменять значения константных полей класса. |
|
константный метод может вызывать любые методы класса. |
 |
константный метод объявляется с ключевым словом const после списка параметров. |
|
константный метод может изменять значения полей класса. |
Какой конструктор вызывается при выполнении операции присваивания между существующими объектами одного типа?
|
конструктор с параметром-объектом. |
|
конструктор копирования. |
|
конструктор по умолчанию. |
 |
в этом случае никакой конструктор не вызывается. |
Выберите правильный вызов функции-члена класса С через указатель «pmfn»
class Class1
{
public:
void func();
};
void (Class1::*pmfn)() = &Class1::func;
Class1 *c;
|
(c.*pmfn)(); |
|
c->*pmfn(); |
 |
c->pmfn(); |
|
c.*pmfn(); |
|
(c->*pmfn)(); |
Какое из следующих утверждений относительно классов и структур истинно?
|
структура может включать в себя только простейшие типы данных (int, char и т.д.). |
|
структура не может быть наследником класса. |
 |
поля структуры открыты по умолчанию. |
|
класс не может быть наследником структуры. |
|
структура не может иметь конструкторов и деструкторов. |
Какие из следующих утверждений неверные?
|
класс может иметь несколько конструкторов с разными параметрами для разных видов инициализации. |
 |
конструктор не может выбросить исключение. |
|
конструктор, вызываемый без параметров, называется конструктором по умолчанию. |
|
параметры конструктора могут иметь любой тип, кроме этого же класса. |
Какое из следующих утверждений относительно классов и структур истинно?
|
класс не может быть наследником структуры. |
 |
поля класса закрыты по умолчанию. |
|
структура может включать в себя только простейшие типы данных (int, char и т.д.). |
|
структура не может быть наследником класса. |
|
структура не может иметь конструкторов и деструкторов. |
Какая из следующих операций не может быть перегружена в классе?
|
+ |
|
- |
|
> |
|
< |
 |
.* |
Какая из следующих операций при перегрузке в классе не должна иметь возвращаемое значение того же типа, что и сам класс?
|
+ = |
 |
! = |
|
* = |
|
- = |
Какое из следующих утверждений НЕПРАВИЛЬНОЕ?
|
вы можете определить дружественную функцию и дружественный класс. |
|
если класс А является дружественным для класса B, то класс A имеет доступ ко всем закрытым полям и методам класса В. |
|
если класс А является дружественным для класса B, это не означает, что класс B является дружественным для A. |
 |
если класс А является дружественным для класса B и класс С - потомок B, то класс A является дружественным для C. |
Какая из следующих операций при перегрузке в классе не должна иметь возвращаемое значение того же типа, что и сам класс?
|
/ |
 |
<= |
|
- |
|
+= |
Какие из следующих операций при перегрузке в классе не должны иметь возвращаемое значение того же типа, что и сам класс?
|
- = |
 |
! = |
|
* = |
 |
< = |
В чем, кроме имени, различие между методами «f1()» и «f2()» в приведенном ниже коде?
struct Foo
{
int f1() {
return 0;
}
int f2();
};
int Foo::f2() {
return 0;
};
|
f1() - это статическая функция. |
 |
f1() - это встроенная функция. |
|
f2() — private. |
|
f2() - это встроенная функция. |
|
f2() - это статическая функция. |
Основные особенности объективно-ориентированного языка (выберите наиболее точный ответ):
 |
инкапсуляция, наследование, полиморфизм. |
|
абстрактные типы данных и сохранение состояний. |
|
перегрузка операций и обработка исключений. |
|
множественное наследование и полиморфизм. |
Выберите правильные варианты продолжения. Конструктор копирования вызывается при …
 |
возврате объекта из функции |
 |
описании нового объекта с инициализацией другим объектом |
|
выполнении операции присваивания |
|
передаче объекта в функцию через указатель |
Что обычно содержит класс?
|
данные и информацию о них |
|
массивы данных |
|
массивы методов |
 |
данные и методы |
Применение директивы private позволяет
|
сократить текст программы |
 |
упростить отладку программы |
 |
уменьшить количество возможных ошибок |
|
уменьшить объем программы в оперативной памяти |
Какая переменная доступна только в методе, где она объявлена?
|
переменная класса |
|
внешняя переменная |
 |
локальная переменная |
|
переменная — член |
Что можно сказать о приведенном примере?>
#include <iostream.h>
class A{
int x;
public:
A(int y){x = y;}
};
int main(){
A a(3);
cout << a.x << endl;
return 0;
}
|
при выполнении программы возникнет ошибка. |
|
программа будет работать нормально. |
|
программа будет компилироваться, но не будет компоноваться. |
 |
при компиляции программы возникнет ошибка. |
Какая из следующих операций может быть перегружена в классе?
|
?: |
 |
->* |
|
:: |
|
. |
|
.* |
Выберите правильные утверждения (одно или более). Упрощение структуры программы всегда приводит
|
к увеличению ее быстродействия |
|
к увеличению количества классов |
 |
к уменьшению количества повторяющихся фрагментов |
 |
к облегчению ее отладки |
Выберите правильные утверждения.
|
при перегрузке операций не сохраняется количество аргументов используемые в стандартных типах данных. |
 |
при перегрузке операций сохраняются приоритеты операций, используемые в стандартных типах данных. |
 |
при перегрузке операций сохраняются правила ассоциации, используемые в стандартных типах данных. |
|
при перегрузке операции внутри класса первый операнд может быть любого типа. |
Какие из следующих утверждений верные?
|
деструктор является примером константного метода. |
 |
константный метод может вызывать только константные методы. |
|
конструктор является примером константного метода. |
 |
константный метод может вызываться из любых (не только константных) методов. |
|
константный метод объявляется с ключевым словом const после указания типа возвращаемого значения. |
Какие из следующих утверждений верные?
|
внутри локального класса нельзя использовать стандартные типы |
 |
внутри локального класса можно использовать внешние (extern) переменные |
 |
внутри локального класса можно использовать статические (static) переменные |
|
внутри локального класса нельзя использовать структурные типы |
|
внутри локального класса можно использовать автоматические переменные из области, в которой он описан |
Выберите правильное утверждение. Если класс, производный от абстрактного, не определяет все чисто виртуальные функции, он является:
|
закрытым |
|
открытым |
 |
абстрактным |
|
виртуальным |
Какой уровень доступа имеет переменная «x» из класса «derived» в приведенном примере?
class basex
{
protected:
int x;
};
class derived : public basex {};
|
public |
|
private |
|
global |
|
local |
 |
protected |
Что необходимо поставить на место «???» в приведенном примере так, чтобы класс C не имел доступа к неоткрытым (non-public) членам класса A?
class A
{
// ...
};
class B : ??? A
{};
class C : public B
{};
 |
private |
|
virtual |
|
public |
|
protected |
|
virtual protected |
Какое из следующих утверждений правильное?
|
друзья класса имеют доступ к данным всех его потомков. |
|
друзья класса не имеют доступа к закрытым членам класса. |
 |
дружественность не наследуется. |
|
объявление дружественности двунаправленное. |
Выберите правильные утверждения.
 |
абстрактный класс нельзя использовать при явном приведении типов для описания типа параметра функции. |
|
допускается создание объекта абстрактного класса. |
 |
абстрактный класс нельзя использовать при явном приведении типов для описания типа возвращаемого функцией значения. |
|
класс, имеющий чисто виртуальные функции, не является абстрактным. |
Какой уровень доступа имеет переменная «x» из класса «derived» в приведенном примере?
class basex
{
protected:
int x;
};
class derived : protected basex {};
|
global |
|
public |
|
local |
 |
protected |
|
private |
Какое число получится в результате работы программы?
#include <stdio.h>
main()
{
const int a[8] = {3,8,0,-6,0,-1,-9,3};
int i,j,k;
k = 0; j = 2;
for (i = 0; i < 8; i++)
if (a[i] < j) ++k;
printf("%d",k);
}
|
21 |
 |
5 |
|
0 |
С переменными, относящимися к перечисляемому типу данных, можно выполнять операции:
|
выбора |
 |
сравнения на равенство и неравенство |
 |
присваивания |
|
разадресации |
Добавить комментарий
Для отправки комментария вы должны авторизоваться.