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

Конструкция switch - магия какая-то - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Считать информацию из файла в массив структур http://www.cyberforum.ru/cpp-beginners/thread704076.html
Здравствуйте! Выполняю упражнение из книги Прата "С++ язык" Суть в том, что нужно из файла считать определенное количество элементов (количество указано в самом начале файла), и записать эти элементы в каждый элемент структуры patron. А затем вывести все эти элементы. Чтобы вам было проще разбираться. Файл file_69upr.txt, его содержимое 4 Sam Stone 2000
C++ Помощь с функцией Нужно написать функцию, которая делает возможным приоритет операций для данной программы (т.е. использование скобок). Листинг: #include <iostream> #include <stdlib.h> #include <string.h> #include <cmath> using namespace std; const int MaxLength = 10; http://www.cyberforum.ru/cpp-beginners/thread704019.html
Ввод данных в объект string из потока C++
Знаю что можно сделать так: #include <strstream> ... char str = ""; ostrstream ostr(str, sizeof(str)); ostr << 21; ostr << ":"; ostr << 15; ostr << ":"; ostr << 57;
[Объектно-ориентированное программирование] Разработка основы класса C++
Доброго времени суток. Есть такое задание, не могу разобраться. Разработать структуру элементов данных класса в виде динамической структуры данных (динамический массив, список, массив указателей). Разработать: * конструкторы для различных типов входных данных (без параметров, параметр-строка, параметр-массив), конструктор копирования (объект из объекта) и деструктор; * методы вывода и ввода...
C++ интеграл(неопределенный) http://www.cyberforum.ru/cpp-beginners/thread703954.html
Добрый вечер! не нашел подобной темы на форуме мне нужно посчитать неопределенный интеграл в С++ зада ча состоит в том что бы сгладить функцию ступеньки double F(double x_volna) { if ((0<=x_volna) && (x_volna<=0.5)) return 1; if (0.5<=x_volna)&& (x_volna<=1) return 0.0036; }
C++ Программа работает на Windows 7, но не работает на XP #include <locale> #include <windows.h> #include <iostream> #include <fstream> int main () { std::string wont; size_t i; size_t L; size_t result; подробнее

Показать сообщение отдельно
Nikitko_Cent
128 / 98 / 8
Регистрация: 27.10.2011
Сообщений: 629
Завершенные тесты: 2
21.11.2012, 11:11     Конструкция switch - магия какая-то
Сел позавчера за изучение плюсов, изучаю по книжке В.В.Подбельского
В этой книжке приведён пример использования конструкции switch. Сама суть программы состояла в выведении названий все нечётных цифр, не меньших заданной
Я приведу укороченный код без ввода данных и т.п.:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int ic;
 
    ic=4;
 
    switch (ic)
    {
        case 0: case 1: cout << "one, ";
        case 2: case 3: cout << "two, ";
        case 4: case 5: cout << "five, ";
        case 6: case 7: cout << "seven, ";
        case 8: case 9: cout << "nine. ";
                                   break;
    }
при ic=4 программа выводит на экран "five, seven, nine. " Вроде бы всё работает, но одно непонятно - КАК ЭТО РАБОТАЕТ!?!?

Вот почему выводит на экран "five," почему "seven," и почему "nine. " ведь тогда получается что сравнивания case 5 , case 7 , case 9 возвращают true? Блин вообще ничего не пойму, объясните пожалуйста
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru