Задача с применением оператора Switch - C (СИ)
Формулировка задачи:
Задача состоит в том, что бы БЕЗ применения операторов printf в case вывести фразу которая в " "
printf разрешается только ВНЕ оператора switch
Уже который час ломаю голову, как решить - не знаю. Ведь char нельзя сравнивать.
#include<stdio.h>
#include<Windows.h>
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
int a;
char m[20];
printf("Введите номер\n");
scanf("%d", &a);
switch (a)
{
case 1: m[20] = "LOL"; break;
case 2: m[20] = "WTF"; break;
case 3: m[20] = "OMG"; break;
default: printf("Ошибка!\n");
}
printf("%s", m);
}Решение задачи: «Задача с применением оператора Switch»
textual
Листинг программы
#include <stdio.h>
int main()
{
int a;
char* m;
printf("Введите номер\n");
scanf("%d", &a);
switch (a)
{
case 1: m = "LOL"; break;
case 2: m = "WTF"; break;
case 3: m = "OMG"; break;
default: printf("Ошибка!\n");
}
printf("%s", m);
}
Объяснение кода листинга программы
- Подключение стандартной библиотеки для работы с I/O
- Объявление переменных a и m типа int и char* соответственно
- Вывод сообщения с просьбой ввести номер
- Считывание введенного значения в переменную a с помощью функции scanf
- Оператор switch для проверки значения переменной a
- В случае если значение a равно 1, присваиваем переменной m значение
LOL - В случае если значение a равно 2, присваиваем переменной m значение
WTF - В случае если значение a равно 3, присваиваем переменной m значение
OMG - Если значение a не равно ни одному из вышеуказанных, выводим сообщение об ошибке
- Выводим значение переменной m с помощью функции printf