Программа зависает при Fopen - C (СИ)
Формулировка задачи:
#include <stdio.h> int main(void) { int i; FILE * fileRead; fileRead = fopen("E:\\matrix.txt", "a+"); int n, m, temp, kolP = 0, sumP = 0; fscanf(fileRead, "%i%i", &n, &m); for(i = 0; i < n*m; i++){ fscanf(fileRead, "%i", &temp); if(temp>0){ kolP++; sumP+=temp; } } fflush(fileRead); fprintf(fileRead, "\nКоличество положительных - %i Сумма положительных - %i", kolP, sumP); fclose(fileRead); return 0; }
файл содержит:
2 3
1 2 3
4 5 6
Решение задачи: «Программа зависает при Fopen»
textual
Листинг программы
... fseek(fileRead, 0, SEEK_END); fprintf(fileRead, "\nКоличество положительных - %i Сумма положительных - %i", kolP, sumP); ...
Объяснение кода листинга программы
fileRead
- это файловый указатель, который вероятно был получен через функциюfopen
.kolP
- это переменная целочисленного типа, которая представляет количество положительных чисел.sumP
- это переменная целочисленного типа, которая представляет сумму положительных чисел.fseek(fileRead, 0, SEEK_END)
- это функция, которая перемещает файловый указатель в конец файла.fprintf(fileRead,
\nКоличество положительных - %i Сумма положительных - %i, kolP, sumP);
- это функция, которая записывает строку формата в файл, используя файловый указательfileRead
. В данной строке формата происходит подстановка значений переменныхkolP
иsumP
в соответствующие места в строке.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д