Главная / Программирование /
Программирование на языке C в Microsoft Visual Studio 2010 / Тест 2
Программирование на языке C в Microsoft Visual Studio 2010 - тест 2
Упражнение 1:
Номер 1
Что является достоинством языка С?
Ответ:
 (1) эффективность 
 (2) переносимость 
 (3) высокая структурированность 
 (4) невысокие требования к квалификации программиста 
Номер 2
Что является недостатком языка С?
Ответ:
 (1) недостаточная структурированность 
 (2) непереносимость 
 (3) низкая эффективность 
 (4) высокие требования к квалификации программиста 
Номер 3
По какой причине использование языка С предъявляет высокие требования к квалификации использующего его программиста?
Ответ:
 (1) программы на языке С менее наглядны по сравнению с программами на других языках, их сложнее сопровождать 
 (2) язык С используется для создания исключительно сложных систем 
 (3) в языке С отсутствует контроль за действиями программиста 
Упражнение 2:
Номер 2
Почему язык С относится к языку среднего уровня?
Ответ:
 (1) язык С менее совершенен по сравнению с традиционными языками высокого уровня 
 (2) язык С обладает недостаточной структурированностью 
 (3) язык С сочетает элементы языков высокого уровня с функциональностью ассемблера 
Номер 3
Какое утверждение является верным?
Ответ:
 (1) язык С допускает прямую трансляцию в машинный код 
 (2) язык С обладает недостаточной структурированностью, поэтому является языком среднего уровня 
 (3) язык С менее совершенен по сравнению с традиционными языками высокого уровня 
Упражнение 3:
Номер 1
Какая папка предназначена для хранения файлов с исходным кодом в проекте, созданном в среде Microsoft Visual Studio 2010?
Ответ:
 (1) External Dependencies 
 (2) Header Files 
 (3) Resource Files 
 (4) Source Files 
Номер 2
Для чего предназначена папка External Dependencies в проекте, созданном в среде Microsoft Visual Studio 2010?
Ответ:
 (1) для хранения файлов с исходным кодом 
 (2) для хранения заголовочных файлов 
 (3) для хранения изображений иконок приложения 
 (4) для хранения файлов, которые не добавлены в проект явно, но используются в исходном коде 
Номер 3
Для чего предназначена папка Resource Files в проекте, созданном в среде Microsoft Visual Studio 2010?
Ответ:
 (1) для хранения файлов с исходным кодом 
 (2) для хранения заголовочных файлов 
 (3) для хранения изображений иконок приложения 
 (4) для хранения файлов, которые не добавлены в проект явно, но используются в исходном коде 
Упражнение 4:
Номер 1
Какой файл проекта, созданного в Microsoft Visual Studio 2010, содержит настройки среды Visual Studio (информацию об открытых окнах, их расположении и прочих пользовательских параметрах)?
Ответ:
 (1) Example.sdf 
 (2) Example.sln 
 (3) Example.suo 
Номер 2
Какую информацию содержит файл Example.sln проекта, созданного в Microsoft Visual Studio 2010?
Ответ:
 (1) информацию о том, какие проекты входят в данное решение 
 (2) информацию об открытых окнах, их расположении и прочих пользовательских параметрах 
 (3) вспомогательную информацию о проекте, которая используется инструментами анализа кода Visual Studio 
Номер 3
Какую информацию содержит файл Example.suo проекта, созданного в Microsoft Visual Studio 2010?
Ответ:
 (1) информацию о том, какие проекты входят в данное решение 
 (2) информацию об открытых окнах, их расположении и прочих пользовательских параметрах 
 (3) вспомогательную информацию о проекте, которая используется инструментами анализа кода Visual Studio 
Упражнение 5:
Номер 1
Переменные x
и y
объявлены следующим образом:
int x;
short y;
Какие утверждения являются верными при выполнении арифметического выражения x + y
?
Ответ:
 (1) значение x
будет преобразовано кshort
 
 (2) значение y
будет преобразовано к int
 
 (3) результат выражения получит тип int
 
 (4) результат выражения получит тип short
 
Номер 2
Какой тип будет иметь переменная ch
после выполнения приведения типов для вычисления значения d
?
char ch = 'a';
int a;
float b;
double c = 4.5;
double d;
printf("Enter a:");
scanf("%d", &a);
printf("Enter b:");
scanf("%lf", &b);
d = (double)ch + a + b + c;
Ответ:
 (1) char
 
 (2) double
 
 (3) int
 
Номер 3
Заданы переменные:
char ch = 'a';
int a;
float b;
double c = 4.5;
Какой тип получит арифметическое выражение ch + a + b + c
?
Ответ:
 (1) char
 
 (2) double
 
 (3) int
 
 (4) приведенное выражение нельзя вычислить, так как в операции сложения нельзя задавать символьные переменные 
Упражнение 6:
Номер 1
В программе объявлены переменные:
int x = 15, y = 2;
float z;
z = x/y;
printf("z = %f\n", z);
В результате выполнения какой операции будет выведено значение z = 7
?
Ответ:
 (1)
z = x/y;
printf("z = %f\n", z);
 
 (2)
z = x/y;
printf("z = %d\n", (int)z);
 
 (3)
z = x/y;
printf("z = %.1f\n", z);
 
Номер 2
В программе объявлены переменные:
int x = 15, y = 2;
float z;
z = x/y;
printf("z = %f\n", z);
В результате выполнения каких операций будет выведено значение z = 7.5
?
Ответ:
 (1)
z = (float)(x/y);
printf("z = %.1f\n", z);
 
 (2)
z = x/y;
printf("z = %.1f\n", z);
 
 (3)
z = (float)x/y;
printf("z = %f\n", z);
 
 (4)
float Z = 7.0;
z = (float)x/y;
printf("z = %.1f\n", Z);
 
 (5)
z = (1.0*x)/y;
printf("z = %.1f\n", z);
 
Номер 3
Каким будет значение переменной d
после выполнения заданных операций и почему?
int a = 15, b = 2;
float c = 1.0F;
float d;
d = c*(a/b);
Ответ:
 (1) d = 7.5
, так как d
имеет тип с плавающей точкой 
 (2) d = 7
, так как в результате выполнения арифметического выражения будет выполнено преобразование к типу int
 
 (3) d = 7.0
, так как при выполнении деления произойдет потеря точности 
Упражнение 7:
Номер 1
Какой фрагмент кода не содержит ошибок?
Ответ:
 (1)
char answer, strCourseName[100];
printf("Какую лекцию Вы изучаете?\n");
scanf_s("%s", strCourseName, 99);
printf("Есть ли у Вас вопросы по лекции \"%s\" (y/n)?\n", strCourseName);
scanf_s("%s", answer);
 
 (2)
char strCourseName[100];
int iLecCount, iLecNumber;
printf("What course are you studing?\n");
scanf_s("%s", strCourseName, 99);
printf("How many lections in the course \"%s\"?\n", strCourseName);
scanf_s("%d", &iLecCount);
printf("Which lection are you studing?\n");
scanf_s("%d", &iLecNumber);
printf("You must study %d lections to complete the course\n", iLecCount-iLecNumber);
 
 (3)
char answer;
char strLecName[50] = "Переменные и базовые типы данных языка С";
printf("Знакома ли Вам тема лекции "%s" (y/n)?\n", strLecName);
scanf_s("%s", &answer);
 
Номер 2
Какой фрагмент кода содержит не более одной ошибки?
Ответ:
 (1)
char answer, strCourseName[100];
printf("Какую лекцию Вы изучаете?\n");
scanf_s("%s", &strCourseName, 99);
printf("Есть ли у Вас вопросы по лекции "%s" (y/n)?\n", strCourseName);
scanf_s("%s", &answer);
 
 (2)
char answer;
char strLecName[50] = "Переменные и базовые типы данных языка С";
printf("Знакома ли Вам тема лекции \"%s\" (y/n)?\n", &strLecName);
scanf_s("%s", &answer);
 
 (3)
char strCourseName[100];
int iLecCount, iLecNumber;
printf("Какой курс Вы изучаете?\n");
scanf_s("%s", &strCourseName, 99);
printf("Сколько лекций содержится в курсе \"%s\"?\n", strCourseName);
scanf_s("%d", &iLecCount);
printf("Какую лекцию Вы изучаете?\n");
scanf_s("%d", &iLecNumber);
printf("Вам осталось изучать %d лекции(-й)\n", iLecCount-iLecNumber);
 
Номер 3
Какой фрагмент кода содержит ошибки?
Ответ:
 (1)
char answer, strCourseName[100];
printf("Какую лекцию Вы изучаете?\n");
scanf_s("%s", &strCourseName, 99);
printf("Есть ли у Вас вопросы по лекции \"%s\" (y/n)?\n", strCourseName);
scanf_s("%s", &answer);
 
 (2)
char strCourseName[100];
int iLecCount, iLecNumber;
printf("What course are you studing?\n");
scanf_s("%s", strCourseName, 99);
printf("How many lections in the course \"%s\"?\n", strCourseName);
scanf_s("%d", &iLecCount);
printf("Which lection are you studing?\n");
scanf_s("%d", &iLecNumber);
printf("You must study %d lections to complete the course\n", iLecCount-iLecNumber);
 
 (3)
char answer;
char strLecName[50] = "Переменные и базовые типы данных языка С";
printf("Знакома ли Вам тема лекции "%s" (y/n)?\n", strLecName);
scanf_s("%s", &answer);
 
Упражнение 8:
Номер 1
Чем отличаются функции printf()
и puts()
при консольном выводе информации?
Ответ:
 (1) функция printf()
записывает данные в стандартный выходной поток в соответствии с заданной строкой форматирования 
 (2) функция puts()
заменяет символ конца строки '\0' на символ новой строки '\n' 
 (3) функция printf()
предназначена для вывода данных только в файл 
Номер 2
Какие утверждения являются верными?
Ответ:
 (1) функция printf()
записывает данные в стандартный выходной поток в соответствии с заданной строкой форматирования 
 (2) функция puts()
заменяет символ конца строки '\0' на символ новой строки '\n' 
 (3) функция printf()
предназначена для вывода данных только в файл 
 (4) функции printf()
и puts()
полностью аналогичны и ничем не отличаются 
Номер 3
Какие утверждения являются неверными?
Ответ:
 (1) функция printf()
записывает данные в стандартный выходной поток в соответствии с заданной строкой форматирования 
 (2) функция puts()
заменяет символ конца строки '\0' на символ новой строки '\n' 
 (3) функция printf()
предназначена для вывода данных только в файл 
 (4) функции printf()
и puts()
полностью аналогичны и ничем не отличаются 
Упражнение 9:
Номер 1
Каким будет значение переменной FirstName
после выполнения приведенного фрагмента кода, если в запросе программы пользователь введет данные о себе в виде Иван Иванов,30
?
char FirstName[100], LastName[100];
int Age;
printf("Введите Ваши имя, фамилию и возраст: \n");
scanf("%[^,]s %s %d", FirstName, LastName, &Age);
Ответ:
 (1) Иван
 
 (2) Иванов
 
 (3) Иван Иванов
 
Номер 2
Каким образом пользователь должен ввести данные о себе, чтобы в результате выполнения приведенного фрагмента кода программа вывела приветствие Приятно познакомиться, Иван Иванов!
?
char FirstName[100], LastName[100];
int Age;
printf("Введите Ваши имя, фамилию и возраст: \n");
scanf("%s %[^,]s %d", FirstName, LastName, &Age);
printf("Приятно познакомиться, %s %s!\n", FirstName, LastName);
Ответ:
 (1) Иван Иванов 30
 
 (2) Иван Иванов, 30
 
 (3) Иван, Иванов, 30
 
Номер 3
В результате выполнения какого программного кода после ввода пользователем Иван Иванов, 30
будет выведено сообщениеПриятно познакомиться, Иван Иванов!
?
Ответ:
 (1)
char FirstName[100], LastName[100];
int Age;
printf("Введите Ваши имя, фамилию и возраст: \n");
scanf("%s %s %d", FirstName, LastName, &Age);
printf("Приятно познакомиться, %s %s!\n", FirstName, LastName);
 
 (2)
char FirstName[100], LastName[100];
int Age;
printf("Введите Ваши имя, фамилию и возраст: \n");
scanf("%[^,]s %s %d", FirstName, LastName, &Age);
printf("Приятно познакомиться, %s %s!\n", FirstName, LastName);
 
 (3)
char FirstName[100], LastName[100];
int Age;
printf("Введите Ваши имя, фамилию и возраст: \n");
scanf("%s %[^,]s %d", FirstName, LastName, &Age);
printf("Приятно познакомиться, %s %s!\n", FirstName, LastName);
 
Упражнение 10:
Номер 1
Что будет выведено на экран в результате выполнения приведенного фрагмента кода на 32-битной платформе?
printf("\n Maximum integer: %d\n ", INT_MAX);
Ответ:
 (1) Maximum integer: 32767
 
 (2) Maximum integer: 65535
 
 (3) Maximum integer: 2147483647
 
 (4) Maximum integer: 4294967295
 
Номер 2
Какой дипазон значений имеет тип unsigned int
на 32-разрядных платформах?
Ответ:
 (1) от –32768 до 32767 
 (2) от 0 до 65535 
 (3) от –2147483648 до 2147483647 
 (4) от 0 до 4294967295 
Номер 3
Какой дипазон значений имеет тип int
на 32-разрядных платформах?
Ответ:
 (1) от –32768 до 32767 
 (2) от 0 до 65535 
 (3) от –2147483648 до 2147483647 
 (4) от 0 до 4294967295 
Упражнение 11:
Номер 1
Размер (в байтах) объектов каких типов данных не зависит от разрядности процессора?
Ответ:
 (1) char
 
 (2) int
 
 (3) unsigned int
 
Номер 2
Размер (в байтах) объектов каких типов данных зависит от разрядности процессора?
Ответ:
 (1) char
 
 (2) int
 
 (3) unsigned int
 
Номер 3
Какие утверждения являются верными?
Ответ:
 (1) объект типа int
всегда занимает 16 бит 
 (2) объект типа char
всегда занимает 8 бит 
 (3) допустимый диапазон для всех типов данных не зависит от разрядности процессора 
Упражнение 12:
Номер 1
Чему будет равен результат вычисления a + b
, если переменные имеют заданные значения?
int a = INT_MIN;
int b = INT_MAX;
Ответ:
 (1) -1 
 (2) 0 
 (3) 1 
Номер 2
Чему будет равен результат вычисления a + b
, если переменные имеют заданные значения?
int a = SCHAR_MIN;
int b = SCHAR_MAX;
Ответ:
 (1) -1 
 (2) 0 
 (3) 1 
Номер 3
Чему будет равен результат вычисления b - a
, если переменные имеют заданные значения?
int a = 2*SCHAR_MAX;
int b = UCHAR_MAX;
Ответ:
 (1) -1 
 (2) 0 
 (3) 1