КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
If (выражение) оператор s
Ветвления
Ветвление алгоритмов и программ в языке C записывается с помощью условного оператора if. Условный оператор if имеет вид: if (выражение) оператор s1 [else оператор s2] В случае отсутствия конструкции else получим сокращенный условный оператор: Схема работы оператора if (полного и сокращенного) представлена на рис.2.5. Рис.2.5. Схема работы оператора if (полного и сокращенного)
Условие ветвления алгоритма и программы – выражение языка С (как в циклах). Значение выражения служит условием выбора той или иной ветви программы или алгоритма. Если значение выражения ≠ 0, то условие истинно и выполняется оператор s1, иначе – оператор s2. Одна из ветвей может отсутствовать, тогда при нулевом значении выражения оператор s пропускается (сокращенный условный оператор). Задача 2.2. Вычислить значение величины y при следующих условиях: a*x2 + b2*x, если a < 0 y = x – a*b, если 0 ≤ a < 1 1 + x, если a ≥ 1 /* Фрагмент программы для вычисления величины y */ float a, b, x; cin >> a >> b>>x; if (a < 0) cout << “y = ” << a *x *x + b *b *x; else if (a < 1) cout << “y = ” << x - a * b; else cout << “y = ” << 1 + x; Контрольные вопросы и упражнения. 1. Каким будет результат выполнения следующего фрагмента программы? float x = 10,y; float z; char c = '*'; y=x + 2; printf ("\n %f %c %f = %f", x, c, y, x*y); 2. Какие операторы можно использовать в языке С для организации циклов? 3. В каких случаях используется составной оператор? 4. Какие из перечисленных условий будут ложными при заданных значениях a = 10; b = -5; a) while (a) б) while (a>0 || b>0) в) while (a>0 && b>0) г) while (!a || b) д) while (!a && b) е) while (a && b) 5. Какое значение примет величина s после выполнения следующего фрагмента int j, n = 5, s = 0; ... for (j = 0; j < n; j++) s = s + (j + 1)*2; 6.Какие числа будут получены при выполнении следующего фрагмента программы? int j; ... for(j = 20; j > 10; j--) printf (“%d ”, j%3); Какое значение примет величина j после выполнения фрагмента? 7. Что означает следующая запись: for (;;); 8. Запишите оператор ветвления для вычисления y = 1/x (исключите деление на 0). 9.Запишите следующий фрагмент программы без помощи оператора for. Дополните определением типов переменных. Нарисуйте схему. for(r = -1, n = 500; n > 0; n--) { scanf("%f",&z); if (z < r) r = z; } 10. Напишите программу вычисления произведения двух натуральных чисел А и В, не используя операцию умножения. 11. Напишите программу получения таблицы n значений функции: x, если x>=5; y= 2*x, если -5<=x< 5; x2, если x<-5. Заданы количество значений n (n > 0), начальное значение аргумента функции x0 и шаг табулирования t. 12. Напишите программу, которая вводит три числа, находит и выводит наименьшее из заданных чисел.
Дата добавления: 2014-01-03; Просмотров: 494; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |