Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.92
faLek
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
#1

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

08.11.2012, 23:55. Просмотров 1797. Ответов 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, как писать в самом case (C++):

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

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

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

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

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

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

5
mad_svyat
17 / 17 / 0
Регистрация: 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 / 6
Регистрация: 25.10.2011
Сообщений: 175
09.11.2012, 00:18 #3
можно зделать switch по строке
0
faLek
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
09.11.2012, 09:39  [ТС] #4
пасиб.
0
ValeryS
Модератор
6653 / 5062 / 470
Регистрация: 14.02.2011
Сообщений: 16,926
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
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
09.11.2012, 21:12  [ТС] #6
просто я создавал именно через switch=)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.11.2012, 21:12
Привет! Вот еще темы с ответами:

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

Как в операторе switch вместо числового значения case поставить, например, слово? - C++
Как в операторе switch вместо числового значения case поставить, например слово, желательно на русском, и возможно ли это вообще? ...

Switch - case - C++
Доброго времени суток. Сделал меню по такой схеме: switch(a) { case 1: { case 1: case 2: switch(aa) ...

case-switch - C++
Вот то задание что с case-switch надо сделать помогите знаю что задание дурное


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
09.11.2012, 21:12
Ответ Создать тему
Опции темы

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