Строка: Определить, сколько раз в строке встречается первая буква? - C (СИ)
Формулировка задачи:
Здравствуйте.
Помогите решить такую задачку.
Ввести символьную строку. Определить сколько раз в строке встречается первая буква.
Заранее благодарен.
P.S. вот как решить задачу если дан символ или буква, то все получается, а вот застрял, если например дана строка 12аве54 и определить сколько раз встречается первая буква. вот как в строке найти первую букву.
Решение задачи: «Строка: Определить, сколько раз в строке встречается первая буква?»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> int first_letter_count(char *S) { int n=strlen(S); int i,c=1; for (i=1; i<n; i++) if (S[0]==S[i]) c++; return c; } int main(int argc, char *argv[]) { char *Z="1dadc1we1"; printf("%d\n",first_letter_count(Z)); system("PAUSE"); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы со строками и входными-выходными данными
- Определение функции
first_letter_count
, которая принимает указатель на строку и возвращает количество вхождений первой буквы в строку - Внутри функции
first_letter_count
инициализируется переменнаяn
для хранения длины строки - Инициализируются две переменные
i
иc
для использования в цикле - Цикл
for
проходит по всем символам строки, начиная со второго, и проверяет, равен ли текущий символ первой букве строки - Если текущий символ равен первой букве, то переменная
c
увеличивается на единицу - По завершении цикла, функция возвращает значение переменной
c
- В функции
main
инициализируется строкаZ
для тестирования функцииfirst_letter_count
- Вызывается функция
first_letter_count
с передачей строкиZ
в качестве аргумента - Выводится результат работы функции
first_letter_count
- Вызывается функция
system(
PAUSE)
, чтобы приостановить выполнение программы до нажатия клавиши - Возвращается значение 0, чтобы указать, что программа успешно завершилась
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д