Программы на языке Си могут иметь от 1 до нескольких функций. Функция это логически самостоятельная именованная часть программы, которой можно передавать параметры и которая может возвращать какое-то значение.
Формат определения функции:
Возвращаемый_тип имя_функции (тип параметр_1, … тип параметр_n)
{
описание данных;
оператор_1;
M
оператор_n;
return (выражение);
}
Если функция не возвращает ничего, то вместо возвращаемого типа пишется void, тогда в теле функции оператор return не нужен.
Если возвращаемый тип не указан, то по умолчанию int.
Имя функции любое, разрешённое в языке Си.
В ( ) список параметров или аргументов, через запятую, для каждого параметра указывается тип.
Если никакие параметры не передаются, то:
Имя_функции (void)
Имя_функции ( )
Пример функции:
Int mul (int a, int b)
{
return;
}
void output (float x)
{
printf (“Значение x=%f \n”, x);
}
int input ( ) //или int input (void)
{
int i;
puts (“Введите целое число:”);
scanf (“%d”, &i);
return i;
}
Функция должна быть определена раньше, чем она использовалась в программе.
Использование прототипов (он указывает тип возвращаемого функцией значение и типы параметров, используемой в функции).
Формат прототипа:
Возвращаемый_тип имя_функции (тип параметр_1, … тип параметр_n);
Int mul (int a, int b);
Void output (float x);
Int input ( );
#include <stdio.h>
int sqr (int x); // прототип
main ( )
{
int t=10;
printf (“Квадрат числа %d равен %d \n”, t, sqr (t));
return 0;
}
int sqr (int x) // определение функции
{
x=x*x;
return x;
}
x – формальный параметр.
t – фактический параметр.