В тексте удалить все гласные, согласные заменить на прописные - C (СИ)

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

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

Дан текст на английском языке. В нём удалить все гласные согласные заменить на прописные.
var s:string;
m:set of char;
i:integer;
begin
writeln ("напишите текст на английском языке");
readln (s);
m:=['a','e','y','u','o','i','A','E','Y','U','I','O'];
for i:=1 to length (s) do 
begin
while s[i] in m do
begin
if s[i] in m then delete (s,i,1);
end;
s[i]:= lowcase (s[i]);
end;
writeln (s);
end.

Решение задачи: «В тексте удалить все гласные, согласные заменить на прописные»

textual
Листинг программы
#include <stdio.h>
#include <iostream>
#include <stdlib.h>
#include <string.h>
void rm(char *s, int i);
int main() {
    char s[50];
    char *str = s;
    printf("Напишите текст на английском языке\n");
    std::cin>>s;
    char m[12] = {'a','e','y','u','o','i','A','E','Y','U','I','O'};
    for(int i = 0;(unsigned int)i<strlen(s);i++) {
        for(int j =0;(unsigned int)j<sizeof(m);j++) {
            if(s[i] == m[j]) {
               rm(s,i);
               break;
            }
        }
        s[i] = tolower(s[i]);
    }
    printf("%s\n",s);
}
void rm(char* s, int i) {
    for(i;i<strlen(s);i++) {
        s[i]=s[i+1];
    }
}

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

В этом коде задача заключается в том, чтобы удалить все гласные буквы из введённой строки и заменить остальные буквы на прописные. Вот список действий, которые выполняются в коде:

  1. Ввод строки с помощью функции std::cin.
  2. Создание массива m, который содержит все гласные буквы (как в верхнем, так и в нижнем регистре).
  3. Проход по каждому символу в строке.
  4. Проверка, является ли текущий символ гласным. Если да, то этот символ удаляется из строки с помощью функции rm.
  5. Преобразование оставшихся символов в нижний регистр с помощью функции tolower.
  6. Вывод итоговой строки с помощью функции printf. Список функций и переменных:
  7. s - это строка, в которой мы удаляем гласные буквы.
  8. str - это указатель на первый символ строки s.
  9. m - это массив, который содержит все гласные буквы.
  10. i - это индекс текущего символа в строке s.
  11. j - это индекс текущего символа в массиве m.
  12. rm - это функция, которая удаляет символы из строки.
  13. tolower - это функция, которая преобразует символ в нижний регистр.

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


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

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

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