Главная » Статьи » Програмування » C [ Добавить статью ]

RUS Уроки по программированию на языке С (Конструкция for.)


  • Конструкция for.

    В прошлом уроке мы с вами познакомились с таким понятием как цикл и рассмотрели некоторые из конструкций, представляющих циклы в языке С. А, именно - while и do while. Сейчас мы рассмотрим еще одну разновидность цикла – оператор for. Данный оператор теоретически является полной аналогией while, а практически позволяет организовать цикл с более удобным управлением.

    Общий синтаксис и принцип работы конструкции for

    for(инициализация переменной;проверка условия;изменение переменной)
    {
     действие;
    }
    

    Принцип выполнения цикла:

    1. Инициализация переменной.

    2. Проверка условия .

    3. Выполнение действия, если условие истинно.

    4. Если условие ложно, выполнение следующего за циклом оператору.

    5. Если условие было истинно - изменение управляющей переменной.

    6. Проверка условия. Далее снова пункт 3 или 4.

    Схема

    Пример использования.

    Рассмотрим простой уже знакомый пример: с помощью цикла показать на экран цифры от 1 до 5 включительно. Только сделаем это с помощью оператора for.

    #include <iostream>
    void main()
    {
     for(int i=1;i<=5;i++)
     {
     cout<<i;
     }
    }
    
    Комментарий к примеру.

    1. Внутри цикла объявляется переменная i равная 1. Это и будет управляющая переменная.

    2. Затем, осуществляется проверка значения этой переменной с помощью условия i<=5;

    3. Если условие истинно (а так будет, пока i не достигнет значения 6) выполняется показ значения i на экран (cout<<i;) и изменение управляющей переменной i на 1 (i++). Затем, снова проверяется условие.

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

    Примечание: Обратите внимания, что первый шаг - СОЗДАНИЕ И ИНИЦИАЛИЗАЦИЯ ПЕРЕМЕННОЙ - всегда выпоняется только один раз.

    Некоторые особенности синтаксиса for.

    Несмотря на простоту работы оператора, он обладает некоторыми особенностями форм записи.

    Инициализация управляющей переменной.

    1. Инициализация и создание переменной производится в цикле.

     for(int x=1;x<=100;x++)
     {
     cout<<x;
     }
    
    

    2. Cоздание переменной производится до цикла, а инициализация в цикле.

     int x;
     for(x=1;x<=100;x++)
     {
     cout<<x;
     }
    
    

    2. Инициализация и создание переменной производятся до цикла.

     int x=1;
     for(;x<=100;x++)
     {
     cout<<x;
     }
    
    

    Все три примера являются абсолютно функционирующими и равновесными.

    Изменение управляющей переменной.

    Изменение управляющей переменной можно перенести внутрь тела цикла, как это происходит в while и do while.

     for(int x=1;x<=100;)
     {
     cout<<x;
     x++;
     }
    
    
    Условие.

    Условие конструкции также можно пропустить, однако в этом случае оно будет считаться по умолчанию истинным. Таким образом, мы получаем постоянно истинное условие и, как следствие - ВЕЧНЫЙ ЦИКЛ.

     for(int x=1;;x++)
     {
     cout<<x;
     
     }
    
    
    Примечание: Если хотите узнать, как пропустить условие и избежать вечного цикла - читайте следующий раздел урока.

    Исходя из вышеописанного, мы можем сделать следующий вывод: Ни одна из частей цикла for не является обязательной.

    Как видите, работа for проста и аналогична работе while. Что выбрать?! Это зависит от поставленной задачи и от вашего решения.


Категория: C | Добавил: DEN-SHP (05.11.2012)
Просмотров: 582 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]