Главная / Программирование /
Введение в программирование / Тест 8
Введение в программирование - тест 8
Упражнение 1:
Номер 1
Какие из следующих объявлений структур имеют правильный синтаксис?
Ответ:
 (1)
struct sA {char a[12]; sA* this_struct;};
 
 (2)
struct sA {int i; float f;};
 
 (3)
struct sA {int j, sA this_struct;};
 
Номер 2
Сколько байт памяти будет выделено под размещение структуры struct structA { int i1:2; int i2:3; int i3: 6; unsigned int i4:4; int i5:2; };
?
Ответ:
 (1) 1 
 (2) 2 
 (3) 3 
 (4) 6 
Номер 3
Сколько байт памяти будет выделено под размещение объединения union unionA { int i1:12; int i2:12; int i3:30; unsigned int i4:2; };
?
Ответ:
 (1) 1 
 (2) 2 
 (3) 3 
 (4) 4 
 (5) 6 
Упражнение 2:
Номер 1
Какой элемент структуры sA
выводится в стандартный поток вывода следующим кодом? struct structA { int i; } sA[4], *psA;
*psA=&sA[0]; psA++; psA++; psA->i=3; cout<<psA->i;
Ответ:
 (1) 0 
 (2) 1 
 (3) 2 
 (4) 3 
Номер 2
Какое значение примет переменная с1
перечислимого типа enum eColor {blue=1, red, green} c1;
после выполнения оператора c1 = eColor(2);
?
Ответ:
 (1) blue
 
 (2) red
 
 (3) green
 
Номер 3
Какой из следующих операторов присваивает значение 'Е'
элементу c1
вложенной структуры aS2
в следующем примере?struct structA { char c1; char s1[4]; float f1; } aS1, *prtaS1=&aS1;
struct structB { struct structA aS2; } bS1,*prtbS1=&bS1;
Ответ:
 (1)
aS1.c1= 'Е';
 
 (2)
(prtbS1->aS2).c1='Е';
 
 (3)
(*prtaS1).c1= 'Е';
 
Упражнение 3:
Номер 1
При передаче в качестве параметра функции void F2(structA *psA);
структуры по указателю, доступ к элементу структуры i
записывается как:
Ответ:
 (1) psA->i
 
 (2) *psA->i
 
 (3) &psA->i
 
Номер 2
Какой из следующих операторов объявления и инициализации объединения имеет правильный синтаксис?
Ответ:
 (1)
union unionA { char ch1; float f1;} a1={ 'M' };
 
 (2)
union unionA { char ch1; float f1;} a1={ 'M', 11.1 };
 
 (3)
union unionA { char ch1; float f1;} a1={ "ABC" };
 
Номер 3
Какое значение примет переменная с1
перечислимого типа enum eColor{blue, red, green} c1;
после выполнения оператора c1= eColor(1);
?
Ответ:
 (1) blue
 
 (2) red
 
 (3) green
 
Упражнение 4:
Номер 1
Сколько байт памяти будет выделено под размещение структуры struct structB { int i1:2; int i2:3; int i3:6; unsigned int i4:4; };
в С++?
Ответ:
 (1) 1 
 (2) 2 
 (3) 6 
Номер 2
Какие из следующих объявлений структур с одновременной инициализацией элементов x
и y
имеют правильный синтаксис в С++?
Ответ:
 (1) struct POINT { int x; int y;} p_screen = { 50, 100 };
 
 (2) struct POINT { int x; int y;} p_screen { 50, 100 };
 
 (3) struct POINT { int x; int y;} *p_screen = { 50, 100 };
 
Номер 3
Какое значение примет переменная day1
перечислимого типа enum eDay{sn, mn, ts, wd, th, fr, st} day1;
после выполнения оператора day1= eDay(0);
в С++?
Ответ:
 (1) sn
 
 (2) mn
 
 (3) st
 
Упражнение 5:
Номер 1
Какие из следующих объявлений структур языка C++ имеют правильный синтаксис?
Ответ:
 (1)
struct sС {char a[10]; int i; sC* c1;};
 
 (2)
struct sB; struct sС {char a[2]; sB; sb* s1;};
 
 (3)
struct sС {char a[2]; sC c1;};
 
Номер 2
Какой элемент структуры выводится в стандартный поток вывода следующим кодом C++? struct structA { float f; } sA[8], *psA;
*psA=&sA[0]; psA++; psA->f=11.1; cout<<psA->f;
Ответ:
 (1) 0 
 (2) 1 
 (3) 2 
Номер 3
Какой элемент объединения будет проинициализирован значением 1
при выполнении следующего кода C++? union TypeNum { int i; long l; float f; }; union TypeNum v1 = { 1 };
Ответ:
 (1) v1.i
 
 (2) v1.l
 
 (3) v1.f