Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Вариант № РМ.09.01
- --------------------------------------
- Вопрос 5.
- В: Какое максимальное целое число можно задать, если для его хранения использовать 16 бит?
- О: (2 в степени 16) - 1 = 65535
- --------------------------------------
- Вопрос 6.
- В:
- Напишите программу вывода трехмерного массива на консоль:
- int XYZ[][3][4] = {
- { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} },
- { {13, 14, 15, 16}, {17, 18, 19, 20}, {21, 22, 23, 24} }
- };
- О:
- int N_count = sizeof(XYZ) / ( sizeof(int) * 3 * 4 );
- int i, j, k;
- for (i = 0; i < N_count; i++) {
- for (j = 0; j < 3; j++) {
- for (k = 0; k < 4; k++) {
- printf("%d\t", XYZ[i][j][k]);
- }
- printf("\n");
- }
- printf("\n");
- }
- --------------------------------------
- Вариант № РМ.09.02
- Вопрос 5.
- В: Какой размер одномерного символьного массива должен быть объявлен для записи в него строки из 5 символов?
- О: Размер должен быть 6 (т.к. нужен еще один доп. элемент массива для хранения нулевого байта (символа конца строки)).
- Предположим, есть слово ХЛЕБ, тогда в массиве оно будет как: ['Х', 'Л', 'Е', 'Б', '\0'].
- --------------------------------------
- Вопрос 6.
- В:
- Напишите программу поиска максимального элемента в заданном одномерном массиве:
- int A[] = {3, 5, 2, 8, 12, 0, -7, -3, -21};
- О:
- #include <stdio.h>
- int main() {
- int A[] = {3, 5, 2, 8, 12, 0, -7, -3, -21};
- int size = sizeof(A) / sizeof(int);
- int max = A[0];
- int i;
- for (i = 0; i < size; i++) {
- if (A[i] > max) {
- max = A[i];
- }
- }
- printf("Max: %d\n", max);
- return 0;
- }
- --------------------------------------
- Вариант №РМ.09.03
- --------------------------------------
- Вопрос 5.
- В: Переменные каких типов могут храниться в одном массиве?
- О: Переменные одинаковых типов.
- --------------------------------------
- Вопрос 6.
- В: Напишите функцию вычисления факториала целого числа итерационным методом.
- О:
- int factorial(int N) {
- int i, result = 1;
- for (i = 1; i <= N; i++) {
- result *= i;
- }
- return result;
- }
- --------------------------------------
- Вариант №РМ.09.04
- --------------------------------------
- Вопрос 5.
- В: Что выведет на консоль следующий фрагмент кода:
- const char str[]=”Hello!\n”;
- printf(“%d”,sizeof(str));
- О: Выведет 8, т.к. 6 байт занимает 'Hello!', еще 1 байт занимает '\n' и еще 1 байт - признак конца строки (нулевой байт в конце).
- --------------------------------------
- Вопрос 6.
- В: Напишите функцию вычисления факториала целого числа рекурсивным методом.
- O:
- int factorial(int N) {
- if (N >= 1) {
- return N * factorial(N-1);
- } else {
- return 1;
- }
- }
- --------------------------------------
- Вариант №РМ.09.05
- --------------------------------------
- Вопрос 5.
- В: Что выведет на консоль следующий фрагмент кода:
- float a = 10.0f;
- printf("%010.2f %c 100", a, a < 100.f ? '<' : '>');
- О: 0000010.00 < 100
- Почему так: %010.2f задает строку формата в котором будет выводиться число. Т.к. формат имеет вид %010.2f, то:
- а) на запись числа будет отведено 10 символов;
- б) .2f означает, что будет выведено два знака после запятой;
- в) слева число при выводе дополнится нулями (т.к. после процента идет 0);
- г) конструкция вида a < 100.f ? '<' : '>' это тернарный оператор условия, который действует вот так:
- "A ? B : C" это тоже самое, что (если A истинно, то B, иначе C).
- --------------------------------------
- Вопрос 6.
- В: Напишите функцию побитового вывода на консоль целого числа без знака.
- О:
- void print_bin(unsigned int N) {
- if (N == 0 || N == 1) {
- printf("%d", N);
- } else {
- print_bin(N / 2);
- printf("%d", N % 2);
- }
- }
- --------------------------------------
- Вариант №РМ.09.06
- --------------------------------------
- Вопрос 5.
- В: Имеется одномерный массив из 5000 значений. К какому из элементов быстрее произойдет
- обращение по индексу – ко второму или к предпоследнему?
- O: Можно считать, что одинаково, т.к. обращение по индексу есть просто результат сложения адреса первого элемента
- массива с индексом, умноженным на размер элемента массива.
- --------------------------------------
- Вопрос 6.
- В: Напишите функцию вывода на консоль четных целых чисел от 0 до N.
- O:
- void print_even(int N) {
- int i;
- for (i = 0; i <= N; i += 2) {
- printf("%d ", i);
- }
- }
- --------------------------------------
- Вариант №РМ.09.07
- --------------------------------------
- Вопрос 5.
- В:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement