Подсчитать количество вхождений в файл каждой из букв а, b, c - C (СИ)
Формулировка задачи:
Дано символьный файл. Подсчитать количество вхождений в файл каждой из букв а, b, c, d, e, f и вывести результат отдельными строками.
Заранее спасибо!!!!
Заранее спасибо!!!
Вот написал код в котором выводит на екран буквы a,b,c,d,e,f. Но мне нужно Подсчитать количество вхождений в файл каждой из букв а, b, c, d, e, f и вывести результат отдельными строками. Я понял ,что сдесь нужно ставить счётчик ,только не могу понять как?Помогите пожалуйста.
#include "stdafx.h" #include <stdio.h> #include "stdlib.h" #define yourfile "yourfilename.txt" int main(void) { FILE *fp; fp=fopen(yourfile,"r"); if(!fp) {printf("ERROR FILE NOT OPEN!"); exit(1); } while (!feof(fp)) { char ch; ch=getc(fp); if (ch - 'a' <= 'f'-'a' ) { printf(" %c",ch); } } fclose(fp); return 0; }
Что никто не может помочь?
А как сделать в программе , что б мне выводило только например а-3 ,е-7 ?
#include "stdafx.h" #include <stdio.h> #include "stdlib.h" #define yourfile "yourfilename.txt" int main(void) {int i; FILE *fp; fp=fopen(yourfile,"r"); int count [6]; for( i=0;i<6;i++) count[i]=0; if(!fp) {printf("ERROR FILE NOT OPEN!"); exit(1); } while (!feof(fp)) // Пока не конец файла { char ch; ch=getc(fp); // Чтение символа ch из файла pf { if (ch - 'a' <= 'f'-'a' )//Принадлежит ли ch отрезку a-f count[ch-'a']++ ; printf("%c %d\n",ch,count[ch - 'a']); } } fclose(fp); return 0; }
Решение задачи: «Подсчитать количество вхождений в файл каждой из букв а, b, c»
textual
Листинг программы
while ((c = fgetc(fp)) != EOF) // пока считали символ в переменную с и он оказался не символом конца файла * * * * if (c >= 'a' && c <= 'f') // если символ лежит в диапазоне [a, f] * * * * * * all[c - '0' - 49]++; // в массиве all с индексом, равным значению этой переменной в коде ASCII - 49 (начиная с 49 символа идут малые латинские буквы) for (i=0; i < SIZE; i++) // от начала до конца массива * * * * printf("%c-%d\n", i + 49 + '0', all[i]); // выводим содержимое на экран. i + 49 - номер символа по таблице ASCII. Добавление '0' преобразует int в char
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д