Главная /
Программирование на языке C в Microsoft Visual Studio 2010 /
Программа формирует сообщение об ошибке из отдельных строк в зависимости от степени критичности ошибки: #include <stdio.h> #include <conio.h> #include <stdarg.h> void error(int severity, ... ); int main( void ) { char err[][30] = {"Сообщ
Программа формирует сообщение об ошибке из отдельных строк в зависимости от степени критичности ошибки:
#include <stdio.h>
#include <conio.h>
#include <stdarg.h>
void error(int severity, ... );
int main( void )
{
char err[][30] = {"Сообщение 1", "Сообщение 2"};
int n = -1;
printf("Введите степень критичности ошибки (целое число): ");
scanf("%d", &n);
switch (n) {
case 0: error(0, "Ошибка!", '\0');
break;
case 1: error(0, "Ошибка!", err[0], '\0');
break;
default: error(1, "Ошибка!", err[0], err[1], '\0');
}
return 0;
}
void error(int severity, ... )
{
va_list ap;
va_start(ap, severity);
for (;;) {
char *p = va_arg(ap, char*);
if (p == '\0') break;
printf("%s ", p);
}
va_end(ap);
printf("\n");
}
Какое сообщение будет выведено на экран, если пользователь задаст значение n
равным 10?
вопрос
Правильный ответ:
Ошибка!
Ошибка! Сообщение 1
Ошибка! Сообщение 1 Сообщение 2
при выполнении программы возникнет ошибка, так как в программе не предусмотрена обработка данного значения степени критичности ошибки
Сложность вопроса
68
Сложность курса: Программирование на языке C в Microsoft Visual Studio 2010
62
Оценить вопрос
Комментарии:
Аноним
Зачёт сдан. Лечу пить отмечать сессию интуит
19 авг 2019
Аноним
Это очень намудрённый вопрос intuit.
07 дек 2017
Аноним
Я провалил экзамен, почему я не увидел этот великолепный сайт с ответами по интуит раньше
25 дек 2016
Другие ответы на вопросы из темы программирование интуит.
- # В результате выполнения какой программы на экран ничего не будет выведено?
- # Какая программа содержит ошибку?
- # Задана функция вычисления факториала: long fact(long n) { return (n>1) ? n * fact(n-1) : 1; } Какое утверждение является неверным?
- # Для чего предназначена папка Resource Files в проекте, созданном в среде Microsoft Visual Studio 2010? [Большая Картинка]
- # В каком случае память выделяется динамически? int arr1[10] = {1,2,3,4,5}; (1) int *arr2 = (int *)calloc(10, sizeof(int)); (2) int *arr3 = (int *)malloc(10*sizeof(int)); (3) int arr4[][3] = {{1,2,3}, {4,5,6}}; (4)