w3resource

C Programming: Replace lowercase characters by uppercase and vice-versa

C String: Exercise-15 with Solution

Write a program in C to read a sentence and replace lowercase characters by uppercase and vice-versa.

C Programming: Replace lowercase characters by uppercase and vice-versa

Sample Solution:

C Code:

#include <stdio.h>
#include <string.h>
#include <ctype.h>

void main()
{
  char str[100];
  int ctr, ch, i;

       printf("\n\nReplace lowercase characters by uppercase and vice-versa :\n");
       printf("--------------------------------------------------------------\n");	

	   printf("Input the string : ");
       fgets(str, sizeof str, stdin);  

  i=strlen(str);

  ctr = i; /*shows the number of chars accepted in a sentence*/

  printf("\nThe given sentence is   : %s",str);

  printf("After Case changed the string  is: ");
  for(i=0; i < ctr; i++)
  {
    ch = islower(str[i]) ? toupper(str[i]) : tolower(str[i]);
    putchar(ch);
   }
   printf("\n\n");

} 

Sample Output:

Replace lowercase characters by uppercase and vice-versa :                                                    
--------------------------------------------------------------                                                
Input the string : This Is A Test String                                                                      
                                                                                                              
The given sentence is   : This Is A Test String                                                               
After Case changed the string  is: tHIS iS a tEST sTRING 

Flowchart :

Flowchart: Replace lowercase characters by uppercase and vice-versa

C Programming Code Editor:

Improve this sample solution and post your code through Disqus.

Previous: Write a C program to check whether a given substring is present in the given string.
Next: Write a program in C to find the number of times a given word 'the' appears in the given string.

What is the difficulty level of this exercise?



C Programming: Tips of the Day

Is there a way to specify how many characters of a string to print out using printf()?

The basic way is:

printf ("Here are the first 8 chars: %.8s\n", "A string that is more than 8 chars"); 

The other, often more useful, way is:

printf ("Here are the first %d chars: %.*s\n", 8, 8, "A string that is more than 8 chars"); 

Here, you specify the length as an int argument to printf(), which treats the '*' in the format as a request to get the length from an argument.

You can also use the notation:

printf ("Here are the first 8 chars: %*.*s\n",
        8, 8, "A string that is more than 8 chars"); 

This is also analogous to the "%8.8s" notation, but again allows you to specify the minimum and maximum lengths at runtime - more realistically in a scenario like:

printf("Data: %*.*s Other info: %d\n", minlen, maxlen, string, info); 

The POSIX specification for printf() defines these mechanisms.

Ref: https://bit.ly/395Zj2j