codescracker
c++

C++ Program to Convert Lowercase to Uppercase



« Previous Program Next Program »


In this article, you will learn and get code on lowercase to uppercase conversion of both character and string in C++. The program is created with and without using library function. Here are the list of programs available over here:

Note - Here lowercase and uppercase character actaully means lowercase/uppercase alphabet character.

Lowercase Character

An alphabet character written in small letter say c is called as lowercase alphabet character. The ASCII values of all the 26 lowercase alphabet (a-z) are 97-122. That is, ASCII value of a is 97, b is 98, c is 99 and so on.

Uppercase Character

An alphabet character written in capital letter say C is called as uppercase alphabet. The ASCII values of all the 26 uppercase alphabet (A-Z) are 65-90. That is, ASCII value of A is 65, B is 66, C is 67 and so on.

Lowercase and Uppercase String

If all alphabet characters of a string written in small letter, then the string can be called as lowercase string. For example, codescracker. Whereas, if all alphabet characters of a string written in capital letter, then the string can be called as uppercase string. For example, CODESCRACKER

C++ Lowercase Character to Uppercase

Let's create the program that receives an alphabet character (in lowercase) from user at run-time. Now convert & prints the equivalent uppercase value of the given (entered) character (in lowercase) without using library function

The question is, write a program in C++ that converts lowercase character entered by user to its equivalent uppercase character. Here is the answer to this question.

// C++ Program to Convert Lowercase Character to Uppercase
// ----codescracker.com----

#include<iostream>
using namespace std;
int main()
{
    char chLower, chUpper;
    int ascii;
    cout<<"Enter the Character: ";
    cin>>chLower;
    ascii = chLower;
    ascii = ascii-32;
    chUpper = ascii;
    cout<<"\nUppercase: "<<chUpper;
    cout<<endl;
    return 0;
}

This program was build and run under Code::Blocks IDE. Here is its sample run:

C++ program convert string lowercase to uppercase

Now supply character input (in lowercase) say c and press ENTER key to see its equivalent value in uppercase as shown in the snapshot given below:

lowercase character to uppercase c++

From above program, the statement:

ascii = chLower;

initialized the ASCII value of character stored in chLower, to ascii. Because, chLower is of char (character) type variable, whereas ascii is of int (integer) type variable, therefore the ASCII value (integer) of chLower gets initialized to ascii.

For example, if user enters c as lowercase alphabet character input, then c gets stored in chLower and its ASCII value 99 gets initialized to ascii

Note - Because the ASCII value of A (capital letter) is 65. Whereas the ASCII value of a (small letter) is 97. The difference between both ASCII values is 32. Therefore, on subtracting 32 from the ASCII value of lowercase alphabet character gives you the ASCII value of equivalent alphabet character in uppercase.

So the statement,

ascii = ascii-32;

initializes ascii-32 or 99-32 or 67 to ascii. So the new value of ascii is 67. And 67 is the ASCII value of C (capital letter)

Therefore the statement given below:

chUpper = ascii;

initializes the character value whose ASCII value is 67. That will be C. So chUpper = C. Now print the value of chUpper.

What if User enters an Invalid Input ?

To deal with an invalid input, received by user (at run-time) like:

Then, here is another program to deal with these types of inputs:

// C++ Lowercase Character to Uppercase
// ----codescracker.com----

#include<iostream>
using namespace std;
int main()
{
    char chLower, chUpper;
    int ascii;
    cout<<"Enter the Character: ";
    cin>>chLower;
    if(chLower>='a' && chLower<='z')
    {
        ascii = chLower;
        ascii = ascii-32;
        chUpper = ascii;
        cout<<endl<<chLower<<" in Uppercase: "<<chUpper;
    }
    else if(chLower>='A' && chLower<='Z')
        cout<<"\nAlready in Uppercase";
    else
        cout<<"\nInvalid Input!";
    cout<<endl;
    return 0;
}

Here is its sample run with user input d:

lower character to upper c++

Here is another sample run with user input D:

c++ lowercase character to uppercase

And here is the last sample run with user input 3:

c++ convert lowercase to uppercase

C++ Lowercase String to Uppercase

Now let's convert lowercase string received by user to its equivalent uppercase string. Because string is a combination of characters, therefore we have to convert all the characters (available in string) one by one to uppercase as shown in the program given below:

// C++ Lowercase String to Uppercase
// ----codescracker.com----

#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
    char strLower[50], strUpper[50];
    int ascii, i=0, chk=0;
    cout<<"Enter the String: ";
    gets(strLower);
    while(strLower[i]!='\0')
    {
        if(strLower[i]>='a' && strLower[i]<='z')
        {
            ascii = strLower[i];
            ascii = ascii-32;
            strUpper[i] = ascii;
            chk++;
        }
        else
            strUpper[i] = strLower[i];
        i++;
    }
    strUpper[i]='\0';
    if(chk==0)
        cout<<"\nString is already in Uppercase";
    else
        cout<<"\nUppercase of String: "<<strUpper;
    cout<<endl;
    return 0;
}

Here is its sample run with user input This is CodesCracker:

lowercase string to uppercase c++

Using Library Function strupr()

This the last program that uses library function strupr(). The function takes string as its argument and converts it into its equivalent uppercase string. The function is defined in string.h header file.

// Lowercase String to Uppercase using Library Function
// ----codescracker.com----

#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
int main()
{
    char str[50];
    cout<<"Enter the String: ";
    gets(str);
    cout<<"\nUppercase of String: "<<strupr(str);
    cout<<endl;
    return 0;
}

This program produces the same output as of previous one.

Same Program in Other Languages


« Previous Program Next Program »