Вот такие вопросы -
1. 8*8=40, чему равно 9*9?
a. 81
b. 51
c. 47
d. 45
2. Дана следующая структура:
#pragma pack(push,1)
struct some_structure {
int some_field;
char data[0];
};
#pragma pack(pop)
Компилятор gcc 4.7.2, оптимизации отключены.
К какой области памяти мы обратимся, когда выполним data[0]?
a. к первому байту поля some_field
b. к последнему байту поля some_field
c. к первому байту после поля some_field
d. такое объявление структуры не скомпилируется
3. Программа в качестве одного из входных параметров принимает число n. Известно, что время работы программы O (n^2).
1. Что это означает?
2. Оцените память используемую программой.
4. Написать функцию bsearch, которая принимает на вход отсортированный по неубыванию массив целых чисел и целое число x. В качестве результата функция должна возвращать индекс первого элемента массива, строго большего x. В Вашей реализации функция может принимать любое количество любых параметров, только 2
этих параметра обязательны. При использовании Вашей функции должна быть возможность определить, существует ответ или нет. В качестве решения пришлите ссылку на репозиторий с программой на языке C с примером использования функции.
5. Вы должны написать следующую программу на языке C: Вашей программе в качестве аргумента будет передано имя файла, в котором будет находиться множество строк (ASCII символы с кодами от 32 до 127). Далее Ваша программа должна считывать строки из stdin, пока не придет строка "exit". После каждой считанной строки Ваша программа должна выводить в stdout строку "YES" или "NO" в зависимости от
того, встречается данная строка в переданном файле или нет. Размер файла со словарем не превосходит 128мб. Напишите как можно более эффективное решение и будьте готовы объяснить, почему Вы выбрали именно это решение. В качестве ответа пришлите ссылку на репозиторий с вашей программой и makefile'ом. Программа должна
компилироваться GCC 4.7.2.
По-мо-ги-те!!