Mail.ru
Почта
Мой Мир
Одноклассники
ВКонтакте
Игры
Знакомства
Новости
Календарь
Облако
Заметки
Все проекты
Все проекты
выход
Регистрация
Вход
Категории
Все вопросы проекта
Компьютеры, Интернет
Темы для взрослых
Авто, Мото
Красота и Здоровье
Товары и Услуги
Бизнес, Финансы
Наука, Техника, Языки
Философия, Непознанное
Города и Страны
Образование
Фотография, Видеосъемка
Гороскопы, Магия, Гадания
Общество, Политика, СМИ
Юридическая консультация
Досуг, Развлечения
Путешествия, Туризм
Юмор
Еда, Кулинария
Работа, Карьера
О проектах Mail.ru
Животные, Растения
Семья, Дом, Дети
Другое
Знакомства, Любовь, Отношения
Спорт
Золотой фонд
Искусство и Культура
Стиль, Мода, Звезды
Полный список
Спросить
Лидеры
Поиск по вопросам
Ответы Mail.ru
Программирование
Android
C/C++
C#
iOS
Java
JavaScript
jQuery
SQL
Perl
PHP
Python
Веб-дизайн
Верстка, CSS, HTML, SVG
Системное администрирование
Другие языки и технологии
Вопросы - лидеры.
Скрипт от Anomaly на CoC перевести
1 ставка
Нужно сделать Алгоритмический способ перевода чисел в римскую систему счисления.
1 ставка
Помогите написать код на Паскаль.
1 ставка
Лидеры категории
Лена-пена
Искусственный Интеллект
М.И.
Искусственный Интеллект
Y.Nine
Искусственный Интеллект
•••
подскажите почему компилятор игнорирует
Nikita Pavlov
Ученик
(76), закрыт
6 лет назад
#include
#include
#include
#define NUM 3
int main()
{
int i;
char str[NUM * 2 + 1] = "ABCDEF";
char ch;
int num = 0;
printf ( "section A:\n" );
for ( i = 0; i < strlen ( str ) && str[i] != 'F'; i++ )
{
ch = str[i];
switch ( ch )
{
case 'A':
num += 10;
printf ( "%d\n", num );
break;
case 'B':
num += 20;
printf ( "%d\n", num );
break;
case 'C':
num += 30;
printf ( "%d\n", num );
break;
case 'D':
num += 40;
printf ( "%d\n", num );
break;
default:
num /= 10;
printf ( "%d\n", num );
break;
}
}
printf ( "section B:\n" );
strcpy ( str + NUM, "abd" );
for ( i = 0; i < NUM; i++ )
if ( ( str[i] - str[i + NUM] ) != ( str[i + 1] - str[i + 1 + NUM] ) ) break;
printf ( "%d %s\n", i, str );
return 0;
}
почему компилятор игнорирует
Section B:
0 ABCabd
и пишет сразу
Section B:
1 ABCabd
Лучший ответ
Алекс Куха
Высший разум
(449590)
7 лет назад
как накодили, так и выдаёт. при
i=0 условие false (B-b=A-a), next
i=1, а там уже true (B-b!=C-d), след-но мимо (brake)
Nikita Pavlov
Ученик (76)
7 лет назад
все верно, я понял, спасибо
Остальные ответы
Похожие вопросы
#include
#include
#define NUM 3
int main()
{
int i;
char str[NUM * 2 + 1] = "ABCDEF";
char ch;
int num = 0;
printf ( "section A:\n" );
for ( i = 0; i < strlen ( str ) && str[i] != 'F'; i++ )
{
ch = str[i];
switch ( ch )
{
case 'A':
num += 10;
printf ( "%d\n", num );
break;
case 'B':
num += 20;
printf ( "%d\n", num );
break;
case 'C':
num += 30;
printf ( "%d\n", num );
break;
case 'D':
num += 40;
printf ( "%d\n", num );
break;
default:
num /= 10;
printf ( "%d\n", num );
break;
}
}
printf ( "section B:\n" );
strcpy ( str + NUM, "abd" );
for ( i = 0; i < NUM; i++ )
if ( ( str[i] - str[i + NUM] ) != ( str[i + 1] - str[i + 1 + NUM] ) ) break;
printf ( "%d %s\n", i, str );
return 0;
}
почему компилятор игнорирует
Section B:
0 ABCabd
и пишет сразу
Section B:
1 ABCabd