Rewrite the following C program using Conditional / Ternary Operator.
Page Contents
#include<stdio.h>
int main()
{
float sal;
printf("Enter the salary\n");
scanf("%f", &sal);
if(sal >= 25000 && sal <= 40000)
{
printf("Manager\n");
}
else
if(sal >= 15000 && sal < 25000)
printf("Accountant\n");
else
printf("Clerk\n");
return 0;
}
Note: We need to rewrite the above C program using Ternary / Conditional Operator.
Good Example of Nested Ternary Operator
C Program To Check Leap Year Using Ternary Operator
Related Read:
Nested if else Statement In C
Ternary Operator / Conditional Operator In C
Relational Operators In C
Logical Operators In C
(expression_1) ? (expression_2) : (expression_3);
expression_1 is a comparison/conditional argument. expression_2 is executed/returned if expression_1 results in true, expression_3 gets executed/returned if expression_1 is false.
Ternary operator / Conditional Operator can be assumed to be shortened way of writing an if-else statement.
User Input:
Enter the salary
40000
Output:
Manager
As you can see we’ve nested if else statement inside first else statement. So we’ll have nested conditional operator inside expression_3 of outer conditional operator.
Video Tutorial: C Program To Determine Designation of Employee Based On Salary
#include<stdio.h>
int main()
{
int sal;
printf("Enter the salary\n");
scanf("%d", &sal);
( sal >= 25000 && sal <= 40000 ) ?
printf("Manager\n") :
( sal >= 15000 && sal < 25000)?
printf("Accountant\n") :
printf("Clerk\n");
return 0;
}
Output 1:
Enter the salary
35000
Manager
Output 2:
Enter the salary
20000
Accountant
Output 3:
Enter the salary
10000
Clerk
Note: As you can see if you enter the salary as $40001 and above, it shows the designation as Clerk. That is because we’re not checking for salary above $40000. With the problem statement given above, we assume that this C program is for employees with salary less than $40000 and for designation Manager, Accountant and Clerk only.
For list of all c programming interviews / viva question and answers visit: C Programming Interview / Viva Q&A List
For full C programming language free video tutorial list visit:C Programming: Beginner To Advance To Expert