Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
faLek
101 / 102 / 43
Регистрация: 06.03.2012
Сообщений: 478
1

switch-case, как писать в самом case

08.11.2012, 23:55. Просмотров 2136. Ответов 5
Метки нет (Все метки)

Такс дело вот в чём,прога работает всё хорошо,вот только мне не нравится как записваю страны в кейсе,можно ли каким-нибудь образом писать в самом case страны?Например,вот так:
case Vengrija : printf("Столица: Будапешт,население: 11 млн.чел.\n ");break;
или без шансов,и ещё можно пару подсказок как можно код красивей записвать=)


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "stdafx.h"
#include <stdio.h>
#include <clocale>
 
 
 
 
int _tmain()
{   setlocale (LC_ALL,"Russian");
    setlocale (LC_ALL,"rus");
 
    int strana;
    
 
    printf ("Список стран : \n");
    
    printf ("1.Венгрия\n");
    printf ("2.Италия\n");
    printf ("3.Греция\n");
    printf ("4.Турция\n");
    printf ("5.Египет\n");
    printf ("7.Непал\n");
    printf ("8.Бельгия\n");
    
    
    printf ("Введите страну :\n ");
    scanf_s ("%d", &strana);
    
    switch (strana)
      {case 1 : printf("Столица: Будапешт,население: 11 млн.чел.\n ");break;
        case 2 : printf("Столица: Рим,население: 60 млн.чел.\n ");break;
          case 3 : printf("Столица: Афины,население: 10 млн.чел.\n ");break;
            case 4 : printf("Столица: Анкара,население: 55 млн.чел.\n ");break;
              case 5 : printf("Столица: Каир,население: 53 млн.чел.\n ");break;
                case 6 : printf("Столица: Катманду,население: 18 млн.чел.\n ");break;
                  case 7 : printf("Столица: Брюссель,население: 10 млн.чел.\n ");break;
                  default: printf("ёпте,такой страны нету в путеводителе!!!\n");break;
       }
 
    getchar();
    getchar();
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2012, 23:55
Ответы с готовыми решениями:

Оптимальная конструкция switch-case-while / while-switch-case
Имеется конструкция типа: switch() { case 1: while() { ... }

Switch case внутри switch case
Привет всем! Нужна помощь. Пишу калькулятор с консольным меню. Так вот,...

При выборе case 1 всегда черный экран? как правильно указать путь в case
Доброго времени суток) проблема с компиляций когда при компилирование...

Как сравнить case у switch с чаровским массивом?
мне надо написать удобное консольное меню. Как я хочу єєто сделать: Создать...

Как избежать switch case и преобразования типов?
Подскажите пожалуйста, есть класс , допустим ,Automobile , есть наследники...

5
mad_svyat
17 / 17 / 15
Регистрация: 10.01.2012
Сообщений: 34
09.11.2012, 00:10 2
Создай перечисление:
C++
1
enum { Vengriya = 1, Italiya, Gretsiya, Turtsiya, Egipet, Nepal, Belgiya };
и юзай вместо цифер названия стран.
0
(SkyNet)
22 / 40 / 15
Регистрация: 25.10.2011
Сообщений: 175
09.11.2012, 00:18 3
можно зделать switch по строке
0
faLek
101 / 102 / 43
Регистрация: 06.03.2012
Сообщений: 478
09.11.2012, 09:39  [ТС] 4
пасиб.
0
ValeryS
Модератор
7372 / 5573 / 707
Регистрация: 14.02.2011
Сообщений: 18,938
09.11.2012, 09:51 5
а можно вообще без switch обойтись
создаем структуру
типа такой
C++
1
2
3
4
5
6
struct Country
{
char nameCountry[255];
char capital[255];
char comment[255];
};
потом создать массив структур
C++
1
Country cont[10];
заполнить их


и вызывать так

C++
1
printf("%s %s  %s",cont[i].nameCountry ,cont[i].capital,cont[i].comment)  ;
0
faLek
101 / 102 / 43
Регистрация: 06.03.2012
Сообщений: 478
09.11.2012, 21:12  [ТС] 6
просто я создавал именно через switch=)
0
09.11.2012, 21:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.11.2012, 21:12

Как использовать один и тот же case в switch несколько раз?
Как использовать один и тот же case в switch несколько раз?

Можно ли как-то заставить сработать одновременно все case у оператора switch?
Вопрос в заголовке темы:)

Как в операторе switch вместо числового значения case поставить, например, слово?
Как в операторе switch вместо числового значения case поставить, например...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru