Главная страница
Навигация по странице:

  • Краткая теоретическая справка и рекомендации по выполне- нию

  • Пример решения задачи по теме №3 с использованием функ- ций. Пример решения дадим только для цикла for

  • include

  • unsigned char

  • Part ( I - (n-2)*2, n-1, 2);

  • system("pause");

  • Контрольные вопросы по теме №4

  • Язык Си часть 1. Язык Си Часть Интегрированная среда, первая программа


    Скачать 1.52 Mb.
    НазваниеЯзык Си Часть Интегрированная среда, первая программа
    Дата08.10.2019
    Размер1.52 Mb.
    Формат файлаpdf
    Имя файлаЯзык Си часть 1.pdf
    ТипПрограмма
    #89146
    страница3 из 3
    1   2   3
    Тема №4. Функции в языке Си
    Задание: реализуйте задачу по теме №3 с использованием функ- ций, причем требование о реализации отдельными видами циклов ос- тается в силе. Начиная с этой темы все отдельные действия, необхо- димо будет реализовывать с помощью функций.
    Краткая теоретическая справка и рекомендации по выполне-
    нию
    Общие сведения о функциях представлены в книге на страницах с
    203 по 215. В теме №4 выделим вопросы:
    1) общая структура функции в языке Си (стр. 203), которая, как и функция main и математические функции, рассмотренные в теме №1, может содержать:
    тип_результата
    имя_функции (параметры)
    { // начало блока функции
    // тело функции
    } // конец блока функции
    Параметры для функции не обязательны, но круглые скобки – должны быть.
    2) прототип функции (стр. 206), который можно было бы предста- вить себе как предварительное описание функции (без реализации, то есть без тела функции):
    тип_результата
    имя_функции (параметры);
    3) формальные параметры (стр. 203-205), которые задают тип па- раметров при декларировании (описании) функции, а также исполь- зуются при представлении реализации функции;
    4) фактические параметры (стр. 203-205), которые задают реаль- ные данные для работы функции, другими словами, это те параметры, которые задаются при вызове функции на исполнение;
    5) вызов функции на исполнение (стр. 207) возможен, если перед ее вызовом либо был указан прототип, либо дана реализация, то есть

    48 функция должна быть декларирована (представлена) до момента ис- пользования.
    Пример решения задачи по теме №3 с использованием функ-
    ций.
    Пример решения дадим только для цикла for. Решения с другими видами циклов реализуйте самостоятельно. В нашем примере функ- ция будет универсальной для печати любой из трех частей (подстрок) по теме №3.
    #include
    #include
    // Описание прототипа функции
    void Part (
    // формальные параметры
    unsigned char, // первый символ для печати
    unsigned char, // количество печатаемых символов
    unsigned char // шаг изменения печати
    ); // заметьте присутствие точки с запятой
    int main()
    {
    unsigned char n; // переменная задающая номер строки
    for (n = 1; n<=5; n++) //номер строки изменяется от 1 до 5
    { // Печать первой части
    Part ( 'I' - (n-2)*2, n-1, 2); Вызов функции на исполнение
    // Печать второй части
    Part ( 'A', 1, 0); Вызов функции на исполнение
    // Печать третьей части
    Part ( 'C', 5-n, 2); Вызов функции на исполнение
    // Переход на следующую строку
    printf("\n");
    }

    49
    system("pause");
    return 0;
    } // Завершение главной функции
    // Описание реализации функции
    void Part (
    // формальные параметры
    unsigned char Symbol,
    // первый символ для печати
    unsigned char Number,
    // количество печатаемых символов
    unsigned char Step
    // шаг изменения печати
    )
    // заметьте отсутствие точки с запятой
    {
    // тело функции
    unsigned char Cnt;
    // счетчик печатаемых символов
    for ( Cnt=1; Cnt<=Number; Cnt++ )
    {
    printf ("%2c", Symbol);
    Symbol += Step;
    }
    }
    Заметим еще раз, что для вывода всех трех частей строки исполь- зуется одна и та же функция, меняются только ее параметры. Пара- метры, используемые в данном примере, являются только параметра- ми-значениями. Параметры-переменные отличаются тем, что они пе- редаются в виде адреса, размещения данных в оперативной памяти.
    Параметры-переменные будут подробнее рассмотрены в следующих темах.
    Контрольные вопросы по теме №4
    1. Что такое глобальные переменные?
    2. Что такое локальные переменные?
    3. Что такое параметры-значения?
    4. Что такое формальные параметры?
    5. Что такое фактические параметры?
    1   2   3


    написать администратору сайта