Character Input in C
Character Input in C
Character Input
To read a single character as input we use the getchar() function.
In the following example we will take a character as input from the user
and will print the ASCII code of the character.
#include <stdio.h>
int main(void)
char ch;
ch = getchar();
Output
Entered character: A
ASCII value: 65
Write a program in C to get a character input from the user and then
check if it is a digit
We will first take the character as input using the getchar() function then
we will use the isdigit() function to check if the entered character is a
digit. If the function returns non-zero value then the character is a digit
else it is not.
#include <stdio.h>
#include <ctype.h>
int main(void)
char ch;
ch = getchar();
if (isdigit(ch)) {
else
{
printf("Entered character is not digit.");
return 0;
Output
Enter character: 6
isalnum():
#include<stdio.h>
int main()
char ch;
scanf(“%c”,&ch);
if(isalnum(ch))
else
return 0;
}
islower():
#include<stdio.h>
int main()
char ch;
scanf(“%c”,&ch)
if(islower(ch))
else
return 0;
isupper():
#include<stdio.h>
int main()
char ch;
scanf(“%c”,&ch)
if(isupper(ch))
else
return 0;
}
Program to print number of days in month
#include<stdio.h>
int main()
{
int month;
/* Input month number from user */
printf("Enter month number (1-12): ");
scanf("%d",&month);
if(month ==1)
{
printf("31 days");
}
elseif(month ==2)
{
printf("28 or 29 days");
}
elseif(month ==3)
{
printf("31 days");
}
elseif(month ==4)
{
printf("30 days");
}
elseif(month ==5)
{
printf("31 days");
}
elseif(month ==6)
{
printf("30 days");
}
elseif(month ==7)
{
printf("31 days");
}
elseif(month ==8)
{
printf("31 days");
}
elseif(month ==9)
{
printf("30 days");
}
elseif(month ==10)
{
printf("31 days");
}
elseif(month ==11)
{
printf("30 days");
}
elseif(month ==12)
{
printf("31 days");
}
else
{
printf("Invalid input! Please enter month number between (1-12).");
}
return0;
}
return0;}
Output
switch(month)
{
case 1:
printf("31 days");
break;
case 2:
printf("28/29 days");
break;
case 3:
printf("31 days");
break;
case 4:
printf("30 days");
break;
case 5:
printf("31 days");
break;
case 6:
printf("30 days");
break;
case 7:
printf("31 days");
break;
case 8:
printf("31 days");
break;
case 9:
printf("30 days");
break;
case 10:
printf("31 days");
break;
case 11:
printf("30 days");
break;
case 12:
printf("31 days");
break;
default:
printf("Invalid input! Please enter month number between 1-
12");
}
Switch case with character:
Example: Simple Calculator
1. // Program to create a simple calculator
2. #include<stdio.h>
3.
4. int main() {
5. char operator;
6. double n1, n2;
7.
8. printf("Enter an operator (+, -, *, /): ");
9. scanf("%c", &operator);
10. printf("Enter two operands: ");
11. scanf("%lf %lf",&n1, &n2);
12.
13. switch(operator)
14. {
15. case'+':
16. printf("%.1f + %.1f = %.1f",n1, n2, n1+n2);
17. break;
18.
19. case'-':
20. printf("%.1lf - %.1lf = %.1lf",n1, n2, n1-n2);
21. break;
22.
23. case'*':
24. printf("%.1lf * %.1lf = %.1lf",n1, n2, n1*n2);
25. break;
26.
27. case'/':
28. printf("%.1lf / %.1lf = %.1lf",n1, n2, n1/n2);
29. break;
30.
31. // operator doesn't match any case constant +, -, *, /
32. default:
33. printf("Error! operator is not correct");
34. }
35.
36. return0;
37. }
Output
12.4