Подправить программу быстрого возведения в степень - C (СИ)
Формулировка задачи:
Нужно написать программу бинарного возведения в степень. Точнее подправить работу с файлами. Программа должна брать из файла данные и записывать их туда. Сам код:
Как я понимаю чтением из потока занимаются функции fgets (она записывает в массив, я её не хочу использовать) и fgetc (которая читает 1 символ). В файле будут записаны данные число и степень через пробел. Как Возможно ли считать 2 символа с помощью fgetc?
Записывать в файл я думаю нужно через fputc.
Заранее спасибо за ответ.
#include <stdio.h>
int main(void){
FILE *file;
printf("Otkritie faila: ");
file = fopen("file.txt", "w+");
if (file == NULL) printf("oshibka\n");
else printf("done\n");
int a, n;
//чтение из потока a и n//
printf("%d\n", binpow(a, n));
//запись в файл возвращенное значение//
}
int binpow(int a, int n) {
if (n == 0)
return 1;
if (n % 2 == 1)
return binpow(a, n - 1) * a;
else {
int b = binpow(a, n / 2);
return b * b;
}
}Решение задачи: «Подправить программу быстрого возведения в степень»
textual
Листинг программы
fscanf(file1, "%d%d", &a, &n); & потерял