Посчитать количество предложений в файле - 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.
- Программа возвращает ноль, что означает успешное завершение работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д