русс | укр

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

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

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

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


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

Вложение конструкции оператора if


Дата добавления: 2013-12-23; просмотров: 1994; Нарушение авторских прав


Else

Else

Else

Управляющие конструкции языка Си

3.1. Организация ветвящихся процессов: оператор if

 

Программа - это описание средствами языка программирования алгоритма решения задачи. Любой алгоритм можно разделить на следования, ветвления и циклы. В простейшем случае имеют место только следования.

Если имеет место проверка условий и выбор одного из возможных направлений продолжения вычислений, то имеет место ветвление (Рис.2.1).

       
   
 
 

 


Да Нет

       
   

 


Рис.3.1

Ветвления в программах осуществляются с помощью оператора условия if. Этот оператор используется в двух формах:

а) в полной форме:

if(выражение) (if - если, else - иначе)

оператор_1;

оператор_2;

Правило выполнения: если выражение в скобках (здесь некоторое условие) не равно нулю, т.е. “истина”, то выполняется оператор_1. В противном случае выполняется оператор_2.

б) в сокращенной форме:

if (выражение)

оператор_1;

Если выражение в скобках (…) не равно нулю, то выполняется оператор_1, в противном случае управление передается следующему оператору программы.

Операторы_1 и _2 могут быть как простыми, так и составными. В последнем случае группа операторов должна заключаться в фигурные скобки:

{

оператор_1;

оператор_2;

…………

оператор_n;

}.

Каждый оператор внутри скобок должен заканчиваться “;”.

Пример 3.1:

# include <conio.h>

void main ( void)

{

clrscr ();

float a, b, rez ;

printf (“Введите значение а и b: “);

scanf (“%f %f “, &a, &b);

if (b= =0)

printf (“Отношение a / b не определено \n “);

{

rez = a / b;

printf (“Отношение a / b равно %6, 3f\n”, rez);



}

getch( );

}

Еще один фрагмент:

. . . . . . . . .

if ( (ch = getch( ) )= =’g’)

puts (“Конец работы \n”);

puts (“Работа продолжается \n”);

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

 

if (с=сh,ch=getch( ) ).

 

При использовании вложенных конструкций действует правило: конструктор else всегда соответствует ближайшему слева конструктору if, не имеющему части else.

Пример 3.2:

if (x >1)

if (y= =2)

z =5;

else

z = 6;

Здесь часть else относится ко второму оператору if.

Пример3.3: Программа функции sqn(x). Она вычисляет знак введенного числа х, т.е. sgn(x) принимает значение 1, если х > 0, значение -1, если x < 0, и значение 0, если х=0.

#include <stdio.h>

main()

{

int sqn;

float x;

printf (“Введите число”);

scanf (“% f “, &x);

if (x>0)

{ sqn =1; printf (“число %f положительное sqn = %d \n “,x, sqn);}

if (x= =0)

{ sqn=0; printf (“число %f равно нулю sqn= %d \n”, x, sqn);}

if (x<0) { sqn = -1; printf (“число %f отрицательное sqn= %d \n”, x, sqn);}

}

Здесь мы не использовали оператор else.

Часто встречается необходимость использовать конструкцию if – else – if:

if (условие) оператор;

else if(условие) оператор;

else if((условие)оператор;

…..

else оператор;

В этой форме условия проверяются сверху вниз. Как только какое-либо из условий принимает значение “истинно”, выполнится оператор, следующий за этим условием., а вся остальная конструкция будет проигнорирована.

Запишем фрагмент программы примера 3.3 с использованием оператора else.

………………..

if (x>0) { sqn = 1; printf (“число %f положительное \n”, x); }

else if (x<0)

{ sqn= -1; printf (“число %f отрицательное \n”, x); }

else { sqn =0; printf (“число %f равно нулю \n”, x); }

 



<== предыдущая лекция | следующая лекция ==>
Поразрядные (побитовые) операции | Оператор передачи управления go to


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


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

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

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


 


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

 
 

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

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