FUNKCIJE
U slijedećem primjeru, funkcija prima jednu varijablu,
ali ne vraća nikakvu informaciju.
/* Program za računanje faktorijela */ #include <stdio.h> void calc_factorial( int ); /* ANSI prototip */ void calc_factorial( int n ) { int i, factorial_number = 1; for( i = 1; i <= n; ++i ) factorial_number *= i; printf("Faktorijela od %d je %d\n", n, factorial_number ); } main() { int number = 0; printf("Unesite broj\n"); scanf("%d", &number ); calc_factorial( number ); } Ispis programa Unesite broj 3 Faktorijela od 3 je 6Pogledajmo funkciju calc_factorial(). Deklaracija funkcije
void calc_factorial( int n )označava da nema povratne vrijednosti i da funkcija prima jedan integer, unutar tijela funkcije poznat kao n. Zatim dolazi deklaracija lokalnih varijabli,
int i, factorial_number = 0;U C-u je pravilnije pisati,
auto int i, factorial_number = 0;jer ključna riječ auto označava prevodiocu da su varijable lokalne. Program radi prihvaćajući varijablu s tipkovnice i predajući je funkciji. Drugim riječima, varijabla number unutar main tijela se kopira u varijablu n u funkciji, koja tada računa točno rješenje.