Форум программистов, компьютерный форум 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++ Решение дифференциального уравнения методом Эйлера
Добрый День уважаемые программисты! Обращаюсь к вам с вопросом о помощи в решении задачи. Задача находится во вложенном файле, решение в программе просьба предоставить в Exelе. Заранее благодарю!
C++ [Объектно-ориентированное программирование] Разработка основы класса http://www.cyberforum.ru/cpp-beginners/thread703977.html
Доброго времени суток. Есть такое задание, не могу разобраться. Разработать структуру элементов данных класса в виде динамической структуры данных (динамический массив, список, массив указателей). Разработать: * конструкторы для различных типов входных данных (без параметров, параметр-строка, параметр-массив), конструктор копирования (объект из объекта) и деструктор; * методы вывода и ввода...
C++ интеграл(неопределенный) Добрый вечер! не нашел подобной темы на форуме мне нужно посчитать неопределенный интеграл в С++ зада ча состоит в том что бы сгладить функцию ступеньки 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; } подробнее

Показать сообщение отдельно
SatanaXIII
Супер-модератор
Эксперт С++
5610 / 2644 / 245
Регистрация: 01.11.2011
Сообщений: 6,506
Завершенные тесты: 1
21.11.2012, 11:29
Ну. Все просто:
Разберем пошагово конструкцию
C++
1
case 4: case 5: cout << "five, ";
Так как у нас в условии задачи "нечетную цифру не меньше заданной", то четную (4) меньшую (4<5) мы пропускаем. (за этим они и в одной строке) Когда мы доходим до записи:
C++
1
case 4:
, которая у нас истинна, а следовательно все после нее выполняется до конца switch-a или break-а, вот и после нее все идущее начинает выполняться. А следом идет проверка
C++
1
case 5:
, на которую нам пофигу, так как она не конец switch-a и не break. Следовательно все далее выполняется.

А в первые строки
C++
1
2
        case 0: case 1: cout << "one, ";
        case 2: case 3: cout << "two, ";
тупа не заходим, так как не выполняется сравнение case-а.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru