русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Оператор условия if


Дата добавления: 2015-07-04; просмотров: 537; Нарушение авторских прав


Данный оператор записывается в формах:

а) сокращенная форма оператора условия:

if (выражение-условие) оператор;

б) полная форма оператора условия:

if (выражение-условие) оператор1;

else оперaтop2;

выражение-условие – управляющее выражение (логическое или арифметическое выражение, отношение), которое используется только для проверки на равенство нулю. Каждый из операторов (оператор, оператор1, оператор2) может быть либо отдельным оператором, либо набором операторов.

В сокращенной форме оператора условия: если значение выражения-условия отлично от нуля (т.е. истинно), то выполняется оператор. Например:

if (x<y && x<z) min=x;

В полной форме оператора условия: если значение выражения-условия отлично от нуля (т.е. истинно), то выполняется оператор1, при нулевом значении выражения-условия (т.е. ложно) выполняется оператор2. Например:

if (d>=0)

{

x1=(-b-sqrt(d))/(2*a);

x2=(-b+sqrt(d))/(2*a);

cout<< "\nx1="<<x1<<"x2="<<x2;

}

else cout<<"\nРешения нет";

 

Допускается использование вложенных операторов условия if. Оператор условия if может быть включен в конструкцию if или в конструкцию else другого оператора условия if. Чтобы сделать программу более читаемой, рекомендуется группировать операторы и конструкции во вложенных операторах условия if, используя фигурные скобки. Если же фигурные скобки опущены, то компилятор связывает каждое ключевое слово else с наиболее близким if, для которого нет else.

Например:

#include <stdio.h>

void main ( ) {

int t=2, b=7, r=3;

if (t>b) {

if (b < r) r=b;

}

else r=t;

}

В результате выполнения программы r станет равным 2.

Если же в программе опустить фигурные скобки, стоящие после оператора if, то программа будет иметь следующий вид:



#include <stdio.h>

void main ( ) {

int t=2, b=7, r=3;

if (t>b)

if (b < r) r=b;

else r=t;

}

В этом случае r получит значение равное 3, так как ключевое слово else относится ко второму оператору условия if, который не выполняется, поскольку не выполняется условие, проверяемое в первом операторе условия if.

Короткий способ записи оператора if – условная операция. Форма записи оператора следующая:

выражение1 ? выражение2 : выражение3;

Выражение1 должно быть целого или плавающего типа или указатель. Если значение выражения1 отлично от нуля (истинно), то результатом операции является значение выражения2. Если выражение1 равно нулю (ложно), то вычисляется выражение3, и его значение является результатом операции.

Например: Нахождение максимального из двух значений и сохранение его в переменной max.

max=(a<b) ? b : a;

Условную операцию удобно использовать в тех случаях, когда переменной необходимо присвоить одно из двух возможных значений.

Пример 1: Введите три целых числа и выведите наибольшее из них на печать.

#include <stdio.h>

void main() {

int x1, x2, x3;

printf("Введите 3 числа \n");

scanf("%d %d %d", &x1, &x2, &x3);

if ((x1>x2)&&(x1>x3))

printf("наибольшее число %d", x1);

if ((x2>x1)&&(x2>x3))

printf("наибольшее число %d", x2);

if ((x3>x2)&&(x3>x1))

printf("наибольшее число %d", x3);

}

Пример 2: Введите три целых числа и выведите их на печать в порядке возрастания.

#include <stdio.h>

void main() {

int x, y, z;

printf("x="); scanf("%d",&x);

printf("y="); scanf("%d",&y);

printf("z="); scanf("%d",&z);

printf("\nРезультат: \n");

if (x>y)

if (y>z) {

printf("z=%d\n",z);

printf("y=%d\n",y);

printf("x=%d\n",x);

}

else {

printf("y=%d\n",y);

if (x>z) {

printf("z=%d\n",z);

printf("x=%d\n",x);

}

else {

printf("x=%d\n",x);

printf("z=%d\n",z);

}

}

else

if (x>z) {

printf("z=%d\n",z);

printf("x=%d\n",x);

printf("y=%d\n",y);

}

else {

printf("x=%d\n",x);

if (y>z) {

printf("z=%d\n",z);

printf("y=%d\n",y);

}

else {

printf("y=%d\n",y);

printf("z=%d\n",z);

}

}

}

 



<== предыдущая лекция | следующая лекция ==>
Домашние задания | Домашние задания


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.039 сек.