Посчитать количество предложений в файле - C (СИ)
Формулировка задачи:
Посчитать количество предложений в файле. В чем ошибка не понимаю.
Записать результат функции в файл. Если x>y то z=x*Amax иначе z=y*Bmax;
Помогите пожалуйста.
#include <stdio.h> #include <conio.h> #include <dos.h> main() { int cnt = 0; char c; char symbols[3] = ".?!"; FILE *f; int pred=0; clrscr(); f = fopen("text.txt", "r"); printf("\n"); while(!fgetc(f)) { c = fgetc(f); printf("\n%s", c); for (int i=0; i<3; i++) if(c == symbols[i]){ pred++; break; } } fseek(f, 0, SEEK_SET); printf("\nPredlojeniy: %i", pred); getch(); fclose(f); return 0; }
#include <conio.h> #include <stdio.h> int func(int* num, int N) { int mul=1; for(int i=0; i<N; i++) mul*=num[i]; return mul; } int FindMax(int* num, int N) { int mul=num[0]; for(int i=1; i<N; i++) if(mul<num[i]) mul=num[i]; return mul; } int main() { clrscr(); const int n=3, m=2; int i; int A[n], B[m]; printf("Vvedite massiv A\n"); for(i=0;i<n;i++) scanf("%d", &A[i]); printf("Vvedite massiv B\n"); for(i=0;i<m;i++) scanf("%d", &B[i]); int x=func(A, n); int y=func(B, m); int Amax=FindMax(A, n); int Bmax=FindMax(B, m); int z; if (x>y) z=Amax*x; else z=Bmax*y; printf("%i", &z); char * f = "output.txt"; FILE* fp = fopen(f, "w+"); fprintf(fp, "%f", z); getch(); return 0; }
Решение задачи: «Посчитать количество предложений в файле»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <conio.h> int main(void) { char c; char symbols[4] = ".?!"; FILE *f; int pred=0; clrscr(); f = fopen("text.txt", "r"); printf("\n"); while((c=fgetc(f))!=EOF) { printf("%c", c); for (int i=0; i<3; i++) if(c == symbols[i]){ pred++; break; } } printf("\nPredlojeniy: %d", pred); getch(); fclose(f); return 0; }
Объяснение кода листинга программы
В этом коде посчитывают количество предложений в файле. Вот список действий:
- Подключение необходимых библиотек.
- Создание основной переменной — символа c.
- Создание массива символов, который будет обозначать конец предложения (точка, вопросительный знак, восклицательный знак).
- Открытие файла
text.txt
с помощью функции fopen. - Очистка экрана с помощью функции clrscr.
- Чтение файла посимвольно с помощью функции fgetc и вывод каждого символа на экран.
- Переменная pred инициализируется нулем и используется для подсчета количества предложений.
- В цикле while происходит чтение символов из файла до тех пор, пока не будет достигнут конец файла (EOF).
- Если текущий символ равен одному из символов, обозначающих конец предложения, то переменная pred увеличивается на единицу.
- После окончания чтения файла выводится количество предложений.
- Файл закрывается с помощью функции fclose.
- Программа возвращает ноль, что означает успешное завершение работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д