C++ Program to Delete Vowels from a String

In this article, you will learn and get code to remove (delete) vowels from strings in C++. The program is created in the following ways:

What is a vowel?

If the pronunciation of a character is produced by humans, the breath flows out of the mouth without being blocked by teeth, lips, or tongue. Then the character is called a vowel.

There are basically 5 vowels, which are:

Sometimes, y can also be called a vowel. However, in the following program, we will only cover the vowels listed above. I'm not going into depth about vowels. We have to create the program only because we are here.

Remove all vowels from the string

To delete all vowels from a given string in C++ programming, you have to ask the user to enter the string first. Then, as shown in the program below, search for vowels and remove them by shifting all the characters (from here) to one index back.

The question is: write a program in C++ that removes all vowels from a given string. Here is its answer:

#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
    char str[50];
    int i=0, j, chk;
    cout<<"Enter the String: ";
    gets(str);
    while(str[i]!='\0')
    {
        chk=0;
        if(str[i]=='a'||str[i]=='e'||str[i]=='i'||str[i]=='o'||str[i]=='u'||
           str[i]=='A'||str[i]=='E'||str[i]=='I'||str[i]=='O'||str[i]=='U')
        {
            j=i;
            while(str[j-1]!='\0')
            {
                str[j] = str[j+1];
                j++;
            }
            chk = 1;
        }
        if(chk==0)
            i++;
    }
    cout<<"\nString without Vowels = "<<str;
    cout<<endl;
    return 0;
}

This program was built and runs under the Code::Blocks IDE. Here is its sample run:

C++ program delete vowels from string

Now supply the string "codescracker dot com" and press ENTER to remove all the vowels from it. This prints the new string without any vowels as shown in the output given below:

remove vowels from string c++

The dry run of the above program with user input codescracker dot com goes like this:

In C++, remove only the desired vowel from a string

This program does not remove all the vowels from a string; rather, it removes only the desired one. In other words, the program prompts the user to enter the string and a vowel in order to remove the given vowel from the given string.

#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
    char str[50], vowel;
    int i=0, j, chk;
    cout<<"Enter the String: ";
    gets(str);
    cout<<"Enter the Vowel: ";
    cin>>vowel;
    while(str[i]!='\0')
    {
        chk=0;
        if(str[i]==vowel)
        {
            j=i;
            while(str[j-1]!='\0')
            {
                str[j] = str[j+1];
                j++;
            }
            chk = 1;
        }
        if(chk==0)
            i++;
    }
    cout<<"\nString without '"<<vowel<<"' = "<<str;
    cout<<endl;
    return 0;
}

Here is its sample run with user input, codescracker dot com as a string, and o as the vowel to remove:

remove desired vowel from string c++

The same program in different languages

C++ Quiz


« Previous Program Next Program »


Liked this post? Share it!