Difference between revisions of "Programming Test"
(4 intermediate revisions by the same user not shown) | |||
Line 47: | Line 47: | ||
#ни один не подходит | #ни один не подходит | ||
#ошибка компилятора | #ошибка компилятора | ||
+ | ==Как упростить запись следующего запроса== | ||
+ | |||
+ | <code><pre>Select x,y,z | ||
+ | from tabA | ||
+ | WHERE (x>0.12 or x < 0.14)</pre></code> | ||
+ | |||
+ | #SELECT x,y,z FROM TabA WHERE x BETWEEN 0.12 AND 0.14 | ||
+ | #SELECT x,y,z FROM TabA WHERE x BETWEEN 0.12 OR 0.14 | ||
+ | #SELECT x,y,z FROM TabA WHERE x IN(0.12 OR 0.14) | ||
+ | #SELECT x,y,z FROM TabA | ||
+ | ==Какое условие отбора эквивалентно условию: '''BETWEEN''' 10 AND 12== | ||
+ | #>=10 OR <=12 | ||
+ | #>10 AND <12 | ||
+ | #>10 OR <12 | ||
+ | #>=10 AND <=12 | ||
+ | #<10 OR >12 | ||
+ | ==Для создания какого типа запроса используется инструкция языка SQL '''UPDATE'''== | ||
+ | #Запрос на выборку | ||
+ | #Запрос на добавление записей | ||
+ | #Запрос на обновление | ||
+ | #Запрос на объединение | ||
+ | #Перекрестный запрос | ||
+ | #Управляющий запрос | ||
+ | ==Укажите результат== | ||
+ | <code><pre>struct test | ||
+ | {int x, y, z;}; | ||
+ | test my[3] = {{9,8,7}, {6,5,4}, {3,2,1}}; | ||
+ | test *p_my = my; | ||
+ | int x = *(&(++p_my)->x+2);</pre></code> | ||
+ | ==Укажите конечный результат с1 и с2== | ||
+ | <code><pre>int c1= 1; | ||
+ | c1 += ++c1; | ||
+ | int c2= 1; | ||
+ | c2 += c1++;</pre></code> | ||
+ | ==Укажите ошибки== | ||
+ | <code><pre>class CSharp | ||
+ | { | ||
+ | public: | ||
+ | CSharp(){}; | ||
+ | virtual ~CSharp(){}; | ||
+ | protected: | ||
+ | virtual Draw()=0; | ||
+ | }; | ||
+ | |||
+ | class CSomeShape: CSharp | ||
+ | { | ||
+ | public: | ||
+ | CSomeShape(){}; | ||
+ | virtual ~CSomeShape(){}; | ||
+ | protected: | ||
+ | virtual Draw() | ||
+ | { | ||
+ | TRACE("Hello"); | ||
+ | } | ||
+ | }; | ||
+ | |||
+ | void main() | ||
+ | { | ||
+ | CSharp* arr[2]; | ||
+ | arr[0] = new CSharp(); | ||
+ | arr[1] = new CSomeShape(); | ||
+ | arr[0]->Draw(); | ||
+ | arr[1]->Draw(); | ||
+ | }</pre></code> | ||
+ | ==Что будет выведено== | ||
+ | <code> | ||
+ | TRACE("\"Preveed!\"\n");</code> | ||
+ | ==чему в результате будет равно k1 и k2== | ||
+ | <code><pre>int *p1= new int[10]; | ||
+ | int p2[10]; | ||
+ | int k1 = sizeof(p1); | ||
+ | int k2 = sizeof(p2);</pre></code> | ||
+ | ==Чему будут равны элементы массива== | ||
+ | <code><pre>template <class T> | ||
+ | class A | ||
+ | { | ||
+ | public: | ||
+ | A(T val) : m_val(val) {} | ||
+ | operator () (T& val) {val+= ++m_val;} | ||
+ | private: | ||
+ | T m_val; | ||
+ | }; | ||
+ | |||
+ | typedef CArray<int, int> CIntArray; | ||
+ | template<class T> | ||
+ | void ProcForEach(CIntArray& arr, T func) | ||
+ | { | ||
+ | for (int i = 0, nSize = arr.GetSize(); i < nSize; i++) | ||
+ | func(arr.ElementAt(i)); | ||
+ | } | ||
+ | int main(int argc, char* argv[]) | ||
+ | { | ||
+ | CIntArray arr; | ||
+ | arr.Add(2); | ||
+ | arr.Add(1); | ||
+ | ProcForEach(arr, A<int>(5)); | ||
+ | }</pre></code> |
Latest revision as of 07:30, 11 March 2019
Contents
- 1 Что будет выведено в результате исполнения следующего кода
- 2 Как упростить запись следующего запроса
- 3 Какое условие отбора эквивалентно условию: BETWEEN 10 AND 12
- 4 Для создания какого типа запроса используется инструкция языка SQL UPDATE
- 5 Укажите результат
- 6 Укажите конечный результат с1 и с2
- 7 Укажите ошибки
- 8 Что будет выведено
- 9 чему в результате будет равно k1 и k2
- 10 Чему будут равны элементы массива
Что будет выведено в результате исполнения следующего кода
class A
{
public:
A() {cout << "A";}
~A() {cout << "~A";}
virtual void f() {cout << "fA";}
};
class B : public A
{
public:
B() {cout << "B";}
~B() {cout << "~B";}
virtual void f() {cout << "fB";}
};
class C : public A
{
public:
C() {cout << "C";}
~C() {cout << "~C";}
virtual void f() const {cout << "fC";}
};
int main(int argc, char* argv[])
{
A* pA1 = new A(), *pA2 = new B(), *pA3 = new C();
pA1->f();
pA2->f();
pA3->f();
delete pA1;
delete pA2;
delete pA3;
return 0;
}
- fAfBfA~C~B~A
- AABACfAfBfA~A~A~A
- ABACAfAfBfA~C~B~A
- AABACfAfAfA~C~B~A
- ABAACfAfAfA~C~B~A
- AABACfAfBfA~C~B~A
- AABACfAfBfA~A~B~C
- ни один не подходит
- ошибка компилятора
Как упростить запись следующего запроса
Select x,y,z
from tabA
WHERE (x>0.12 or x < 0.14)
- SELECT x,y,z FROM TabA WHERE x BETWEEN 0.12 AND 0.14
- SELECT x,y,z FROM TabA WHERE x BETWEEN 0.12 OR 0.14
- SELECT x,y,z FROM TabA WHERE x IN(0.12 OR 0.14)
- SELECT x,y,z FROM TabA
Какое условие отбора эквивалентно условию: BETWEEN 10 AND 12
- >=10 OR <=12
- >10 AND <12
- >10 OR <12
- >=10 AND <=12
- <10 OR >12
Для создания какого типа запроса используется инструкция языка SQL UPDATE
- Запрос на выборку
- Запрос на добавление записей
- Запрос на обновление
- Запрос на объединение
- Перекрестный запрос
- Управляющий запрос
Укажите результат
struct test
{int x, y, z;};
test my[3] = {{9,8,7}, {6,5,4}, {3,2,1}};
test *p_my = my;
int x = *(&(++p_my)->x+2);
Укажите конечный результат с1 и с2
int c1= 1;
c1 += ++c1;
int c2= 1;
c2 += c1++;
Укажите ошибки
class CSharp
{
public:
CSharp(){};
virtual ~CSharp(){};
protected:
virtual Draw()=0;
};
class CSomeShape: CSharp
{
public:
CSomeShape(){};
virtual ~CSomeShape(){};
protected:
virtual Draw()
{
TRACE("Hello");
}
};
void main()
{
CSharp* arr[2];
arr[0] = new CSharp();
arr[1] = new CSomeShape();
arr[0]->Draw();
arr[1]->Draw();
}
Что будет выведено
TRACE("\"Preveed!\"\n");
чему в результате будет равно k1 и k2
int *p1= new int[10];
int p2[10];
int k1 = sizeof(p1);
int k2 = sizeof(p2);
Чему будут равны элементы массива
template <class T>
class A
{
public:
A(T val) : m_val(val) {}
operator () (T& val) {val+= ++m_val;}
private:
T m_val;
};
typedef CArray<int, int> CIntArray;
template<class T>
void ProcForEach(CIntArray& arr, T func)
{
for (int i = 0, nSize = arr.GetSize(); i < nSize; i++)
func(arr.ElementAt(i));
}
int main(int argc, char* argv[])
{
CIntArray arr;
arr.Add(2);
arr.Add(1);
ProcForEach(arr, A<int>(5));
}