Собственная функция возведения в степень - C (СИ)
Формулировка задачи:
Сейчас изучаю функции, и наткнулся на одну проблему.
Код работает и выводит 1024.
Как сделать так что бы в функцию передавать значения введенные с клавиатуры(scanf 'ом например).
Буду рад помощи.
#include<stdio.h>
int main(){
int rezault=0;
rezault = my_pow1(2,10);
printf("Vashe chislo: %d\n",rezault);
}
int my_pow1(int x, int y){
int i,rez=1;
for(i=0; i < y; i++){
rez*=x;
}
return rez;
}Решение задачи: «Собственная функция возведения в степень»
textual
Листинг программы
#include<stdio.h>
# include <locale.h>
int main()
{
int n, m,result;
setlocale(LC_ALL,"rus");
printf("Введите число и степень:\n");
scanf( "%d%d", &n, &m ); // Вводим размеры
printf( "n=%d, m=%d\n", n, m ); //
printf( "%d",my_pow1(n,m));
return 0;
}
int my_pow1(int x, int y)
{
int i,rez=1;
for(i=0; i < y; i++)
{
rez*=x;
}
return rez;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с языком C.
- Объявление переменных функции main().
- Ввод размеров числа и степени с помощью функции scanf().
- Вывод на экран введенных размеров.
- Вызов функции my_pow1(n,m) и вывод результата на экран.
- Ввод-вывод данных завершен, программа ждет команду пользователя для завершения работы.
- Функция my_pow1() определена как функция, которая принимает два целых числа в качестве аргументов.
- Внутри функции my_pow1() объявлена переменная i для цикла.
- Переменная rez инициализируется единицей.
- Цикл выполняется столько раз, сколько указано во втором аргументе функции.
- Внутри цикла переменная rez умножается на x.
- Функция my_pow1() возвращает rez в качестве результата.
- Цикл завершен, функция my_pow1() тоже.
- Возвращаемое значение функции my_pow1() выводится на экран.
- Программа завершена, команда пользователя ожидается для завершения работы.