Описать рекурсивную функцию, которая подсчитывает количество латинских букв в тексте - C (СИ)
Формулировка задачи:
Описать рекурсивную функцию abc, которая подсчитывает количество латинских букв в тексте. Текст завершается точкой
Листинг программы
- #include "stdafx.h"
- #include <stdio.h>
- #include <conio.h>
- #include <locale.h>
- #define N 5
- int fl=0; //Внешняя переменная - флажок
- void inp_mas(int x[]) //Функция ввода массива
- {
- int i; //Рабочая переменная
- printf("Введите %d элементов массива:\n",N);
- for (i=0; i<N; i++)
- scanf("%d", &x[i]); //Ввод элемента массива
- }
- int sum_abc(int x[], int n) //Рекурсивная функция для подсчета латинских букв в тексте
- if(n<0)
- return 0; //Возвращает ноль если элементы закончились (условие завершения рекурсии)
Решение задачи: «Описать рекурсивную функцию, которая подсчитывает количество латинских букв в тексте»
textual
Листинг программы
- #include <stdio.h>
- #include <ctype.h>
- #include <locale.h>
- #include <string.h>
- int get_sum_latin_chars(const char *str) {
- if (*str == ',' || *str == '.' || *str == ';' || *str == '\0')
- return 0;
- else if (isalpha(*str)) {
- return 1 + get_sum_latin_chars(++str);
- } else
- return get_sum_latin_chars(++str);
- }
- int main() {
- char*s = "mama myla ramy hhj hh..h ";
- printf("Сумма латинских букв = %d.\n", get_sum_latin_chars(s));
- return 0;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д