Роман Корабельников
Роман Корабельников | Репутация: 0 (Без голоса) 5 января 2017 в 16:28
Как написать программу?

Подскажите как написать программу в ANSI C: пользователь вводит с клавиатуры имя файла. Затем любой символ. Надо посчитать, сколько раз данный символ встречается в файле и вывести ответ на экран. (файл текстовый в 1-байтной кодировке - 1 байт это 1 символ). Заранее спасибо всем, кто подскажет пути решения)

 

 

Теги: c, алгоритмы
Андрей Шулин
Андрей Шулин | Репутация: 4 (Без голоса) 12 февраля 2017 в 11:31

ну на пример вот так

Андрей Шулин
Андрей Шулин | Репутация: 4 (Без голоса) 12 февраля 2017 в 11:31

#include <stdio.h>

int main(void)
{
char str[255];
int ch,f_ch,i;
FILE *in;
long count=0;

printf ("enter file name:");
fgets(str,255,stdin);
/* trunc str by newln */
i=0;
while (str[i]!='\n' && str[i]!=0) i++;
str[i]=0;
printf ("What simbol ? :");
ch=fgetc (stdin);

printf ("Use search (%c) simbol in file (%s) \n ",ch,str);

in=fopen(str, "r");
if (in == NULL )
{
printf("Cannot open file %s.\n",str);
return -1;
}

while((f_ch=fgetc(in)) !=EOF)
{
if (f_ch == ch) count++;
}
fclose(in);

printf ("In file %s %d of simbol (%c)\n",str,count,ch);

return 0;
}