Как написать рекурсивную функцыю для подсчёта количества задаваемого символа в тексте - C (СИ)
Формулировка задачи:
как написать рекурсивную функцыю для подсчёта количества задаваемого символа в тексте в С, подскажите, плиз...)
Решение задачи: «Как написать рекурсивную функцыю для подсчёта количества задаваемого символа в тексте»
textual
Листинг программы
// cybfor_rekurciya.cpp: определяет точку входа для консольного приложения.
//
#include "stdafx.h"
#include <string.h>//strlen()
#include <ctype.h>//tolower()
/*как написать рекурсивную функцыю для подсчёта количества задаваемого символа в тексте в С*/
int search_clon(char a[100],int count,char meta,int clon_count)
{
if (count<=-1)
return clon_count;
if (tolower(a[count])==tolower(meta)) clon_count++; //tolower для понижения букв с большой в малую, чтоб равные условия, ато "А" и "а" разные буквы, а так, то "а" и "а" уже понятно что равны
search_clon(a,--count,meta,clon_count);
}
int _tmain(int argc, _TCHAR* argv[])
{
char meta;
char mass[100];
int clon_count=0;
printf("Vvedi iskomui simvol:\n>>");
scanf("%c",&meta); //искомый символ
fflush(stdin);
printf("Vvedi stroky gde iskat':\n>>");
fgets(mass,100,stdin);//считать 100 символов с клавиатуры, т.е. с потока stdin
printf("Vstretilos %d raz\n",search_clon(mass,strlen(mass),meta,clon_count)); //тут вызываем нашу функцию и передаем её параметры
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек: строк (strlen), преобразования в нижний регистр (tolower).
- Рекурсивная функция search_clon для подсчета количества заданного символа в тексте.
- Ввод пользователем искомого символа.
- Ввод пользователем текста для поиска.
- Вызов функции search_clon с передачей параметров: исходный текст, длина текста, искомый символ, счетчик найденных символов.
- Вывод результата работы программы.