Пишем собственную (пользовательскую) функцию возведения в степень.
Наша функция будет иметь небольшие ограничения так как она будет работать только с небольшими целыми числами. (В стандартной библиотеке имеется функция pow(x, y), вычисляющая Xy).
#include <stdio.h>
/* Прототип функции power (возведение в степень) */
int power(int, int);
/* С функции main начинает выполняться программа */
int main()
{
/* значения 2 и i используемые при вызове функции power(2, i) -
аргументы, передаваемые в функцию */
for(int i = 0; i <= 10; ++i)
printf("2 ** %d = %d\n", i, power(2, i));
return 0; // Нормальное завершение программы
}
/* Определение функции power (возведение в степень).
По стандарту ANSI C
*/
int power(int base, int n)
{
/* переменные base и n - параметры функции power */
/* переменные p и i - локальные параметры функции power */
int p = 1;
for(int i = 1; i <= n; ++i)
p = p * base;
return p; // Возвращаемое функцией значение
}
Лист. 1.
gcc -o 1.7_function 1.7_function.c
Лист. 2.
./1.7_function
2 ** 0 = 1
2 ** 1 = 2
2 ** 2 = 4
2 ** 3 = 8
2 ** 4 = 16
2 ** 5 = 32
2 ** 6 = 64
2 ** 7 = 128
2 ** 8 = 256
2 ** 9 = 512
2 ** 10 = 1024
Лист. 3.
Литература: Брайн Керниган, Деннис Ритчи "Язык программирования C (ANSI C)"