Как подсчитать количество измененных символов? - C (СИ)
Формулировка задачи:
Условие задачи такое: заменить все большие буквы на маленькие и подсчитать количество замен. Каким образом мне подсчитать сколько букв я заменил?
Листинг программы
- #include <stdio.h>
- #include <ctype.h>
- #include <string.h>
- int main()
- {
- int i = 0;
- int ptr;
- char str[] = "Testovaya Stroka\n";
- char c;
- while (str[i])
- {
- c = str[i];
- putchar(tolower(c));
- i++;
- }
- getchar();
- return 0;
- }
Решение задачи: «Как подсчитать количество измененных символов?»
textual
Листинг программы
- #include <stdio.h>
- #include <ctype.h>
- int to_lower(char* s){
- int n = 0;
- while(*s){
- if(isupper(*s)){
- *s = tolower(*s);
- ++n;
- }
- ++s;
- }
- return n;
- }
- int main(void){
- int n;
- char s[] = "DOG, FOX, CAT, BAT.";
- puts(s);
- n = to_lower(s);
- puts(s);
- printf("count rep: %d\n", n);
- getchar();
- return 0;
- }
Объяснение кода листинга программы
- Подключение необходимых библиотек:
<stdio.h>
и<ctype.h>
. - Определение функции
to_lower
, которая принимает указатель на строку и изменяет все символы строки на нижний регистр. - Внутри функции
to_lower
инициализируется переменнаяn
для подсчета количества измененных символов. - Запускается цикл
while
, который проходит по каждому символу строки. - Внутри цикла проверяется, является ли текущий символ заглавной буквой.
- Если символ является заглавной буквой, он приводится к нижнему регистру, а переменная
n
увеличивается на 1. - После прохождения цикла возвращается значение переменной
n
. - В функции
main
инициализируется строкаs[]
с заданным значением. - Выводится исходное значение строки
s[]
. - Значение строки
s[]
передается в функциюto_lower
, которая изменяет все символы строки на нижний регистр. - Выводится измененное значение строки
s[]
. - Выводится количество измененных символов с помощью функции
printf
. - Программа ожидает ввода с клавиатуры с помощью
getchar()
. - Программа завершается с возвратом значения 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д