Определить процентное содержание строчных и прописных букв к общему числу символов в тексте - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Дан текст (любой). Нужно определить процентное содержание строчных и прописных букв к общему числу символов в нем. Помогите, пожалуйста, со строками вообще не дружу.

Решение задачи: «Определить процентное содержание строчных и прописных букв к общему числу символов в тексте»

textual
Листинг программы
#include <string.h>
#include <stdio.h>
 
void get_upper_lower_part(const char* str, float* upper, float* lower) {
    int len = 0;
    int u = 0;
    int l = 0;
    char c;
    while (c = *str++) {
        ++len;
        if (c >= 'A' && c <= 'Z') {
            ++u;
        } else if (c >= 'a' && c <= 'z') {
            ++l;
        }
        if (len) {
            *upper = u*100.0f/len;
            *lower = l*100.0f/len;
        }
    }
}
 
int main() {
    char str[] = "Hello world";
    float upper = 0.0f;
    float lower = 0.0f;
    get_upper_lower_part(str, &upper, &lower);
    printf("upper: %f\nlower: %f\n", upper, lower);
    return 0;
}

Объяснение кода листинга программы

  1. В функции get_upper_lower_part определяются переменные len, u и l для хранения количества символов, прописных букв и строчных букв соответственно.
  2. Переменная c используется для хранения текущего символа в строке str.
  3. В цикле while происходит проход по каждому символу в строке str.
  4. Если символ c является прописной буквой (большой), то увеличивается значение переменной u.
  5. Если символ c является строчной буквой (маленькой), то увеличивается значение переменной l.
  6. Если длина строки len больше 0, то вычисляется процентное содержание прописных и строчных букв и сохраняется в переменных upper и lower соответственно.
  7. В функции main определяется тестовая строка str и инициализируются переменные upper и lower для хранения результатов.
  8. Вызывается функция get_upper_lower_part с передачей адресов переменных upper и lower в качестве аргументов.
  9. Результат выводится на экран с помощью функции printf.
  10. Функция main возвращает 0, что означает успешное завершение программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5
Похожие ответы