- •1.Массивы.
- •2.Строковые массивы.
- •4.Процедура без параметров.
- •5.Процедура с параметрами.
- •6.Использование параметров-значений и параметров-переменных в качестве входных. Параметры константы.
- •7. Ограничения, наложенные на формальные и фактические параметры.
- •8.Аппарат функций.
- •9. Побочный эффект в процедурах и функциях.
- •10)Рекурсия
- •11.Опережающее описание процедур
- •12.Параметры процедурного типа:
- •13.Внешние модули, реализованные на других языках программирования. Структура основной программы, вызывающей процедуру. Присоединение текстового файла.
- •14. Структура tpu- модуля и программы.
- •15.Ссылочные типы данных, работа со связанным списком.
- •16.Ссылочные типы данных, формирование списка студентов из файла.
- •17.Поиск элемента в списке.
- •18.Исключение и добавление
- •19.Включение в список.
- •20.Типизированный файл.
- •21.Текстовые файлы
- •22.Файлы прямого доступа:
- •1.Особенности языка Си. Программа печати текста.
- •2.Программа печати таблицы с циклом «пока».
- •3.Программа печати таблицы с арифметическим циклом.
- •4.Программа печати таблицы с арифметическим циклом при использовании символических констант.
- •5.Ввод, вывод символов. Копирование файла.
- •6.Подсчет числа символов в файле
- •7.Подсчет числа строк в файле.
- •8.Подсчет числа символов, строк и слов в файле.
- •9.Подсчет числа каждой цифры, символов пустых промежутков и всех остальных символов.
- •10.Функции
- •11.Методы передачи параметров в функциях
- •12.Заполнение массива одинаковыми значениями.
10.Функции
Функции – это удобный способ оформить вычисления и пользоваться ими далее. После написания функции можно забыть, как она реализована, важно помнить лишь то, что она делает. Пример функции:
# include <stdio.h>
int power(int base, int n); //прототип функции power, должен быть объявлен перед main, сама функция в таком случае может располагаться где угодно
void main(void)//пример того, как функция будет вызвана
{
printf("input digit and stepen\n");
int digit, st;
scanf("%d %d",&digit, &st);//вводим число и степень
printf("%d^%d=%d\n",digit, st,power(digit,st));//здесь мы power(digit,st) - вызов функции, где ей передаются копии digit, st- аргументы
}
int power(int base, int n)//int power - обозначает, что результатом работы функции, который она вернет, будет число типа
int. power - имя функции//(int base, int n) - список параметров. Грубо говоря, эти значения передаются из главной функции, чтобы power c ними работала
//функция возводит число base в степень n
{
int i,p;//i-счетчик цикла, p- результирующее значение
p=1;
for (i=1; i<=n; i++)
p=p*base;
return p;
}
11.Методы передачи параметров в функциях
Имена параметров локальны внутри функции, а значит скрыты для любой другой функции. Остальные подпрограммы могут пользоваться теми же именами для своих целей. Параметр – переменная списка параметров. Аргумент – значение, используемое при обращении функции. За return может
следовать выражение. Return может использоваться и в main, и тогда вернет результирующее значение тому, кто ее вызвал. Обычно 0 – значение корректного завершения программы. Функция перестает работать, когда что-то вернула.
Прототип функции – тип результатов и аргументов должен быть согласован с определением и всеми power. В СИ передача аргументов осуществляется только по значению, т.е. перед вызовом функции создаются копии аргументов, с которыми будет работать функция. Функции можно передавать адрес элемента, при этом не будет создана копия элемента, а работа будет проводиться с самим элементов. После завершения работы функции элемент будет изменен, если он изменялся в теле функции. Так же функция не копирует массивы, а берет адреса первых элементов, и далее работает на самих массивах. Т.е. они тоже могут быть изменены.
12.Заполнение массива одинаковыми значениями.
void main(void)
{
int i=0;
int mas[10];
int count;//просто число, которому будут равны все элементы массива
count=5;
for (i=0; i<10; i++)
mas[i]=count;
}