Смайлы в выводе программы - C (СИ)

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

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

Почему программа выводит смайлы?
#include <stdio.h>
 
int main(void)
{
char glass[] ={'a','e','o','i','u','y'};
char str[100];
int i = 0, j = 0, k = 0, err=0;
printf("Enter the string:");
gets(str);

for (i = 0; glass[i] != '\0'; i++)
{
 k = 0;
   for (j = 0; str[j] != '\0'; j++)
{
         if (str[j] == glass[i])
{
k = 1;
err++;
break;
}
}
 
if (k != 1) printf("%c", glass[i]);
 
}
if(err==6) printf("All the vowels in the line are present!");
return 0;
}

Решение задачи: «Смайлы в выводе программы»

textual
Листинг программы
#include <stdio.h>
 
int main(void)
{
    char glass[] = "eyuioa";
    char str[100];
    int i = 0, j = 0, err=0;
    printf("Enter the string:\n");
    gets(str);
    for (i = 0; glass[i]; i++){
        for (j = 0; str[j]; j++){
            if (str[j] == glass[i]){
                err++;
                putchar(str[j]);
                break;
            }
        }
    }
    if(err==6) printf("\nAll the vowels in the line are present!");
    return 0;
}

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

В этом коде:

  1. Объявлены две переменные: стек str (строка) и стек glass (строка).
  2. Инициализированы значения строк: str — пустая строка, glass — eyuioa.
  3. Инициализированы три переменные: i — счетчик для стек str, j — счетчик для стек glass, err — счетчик для подсчета гласных в строке.
  4. Выводится приглашение для ввода строки.
  5. Вводится строка с помощью функции gets().
  6. Два вложенных цикла: — Первый цикл перебирает символы в стек glass. — Второй цикл перебирает символы в стек str. — Если символ в стеке str совпадает с симвомом в стеке glass, увеличивается счетчик err и выводится этот символ. — Циклы прерываются, если в стеке str не осталось символов или в стеке glass не осталось символов.
  7. Если количество гласных равно 6, выводится сообщение All the vowels in the line are present!.
  8. Возвращается 0, заканчивая работу программы.

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


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

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

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