#include <stdio.h>
int main(void) {
float choice = 2.0f;
switch(choice){
case 1:
printf("Case 1\n");
break;
case 2:
printf("Case 2\n");
break;
case 3:
printf("Case 3\n");
break;
case 4:
printf("Case 4\n");
break;
default:
printf("Case default\n");
}
return 0;
}
Output
prog.c: In function ‘main’:
prog.c:7:9: error: switch quantity not an integer
switch(choice){
^~~~~~
prog.c:5:9: warning: variable ‘choice’ set but not used [-Wunused-but-set-variable]
float choice = 2.0f;
^~~~~~
How to fix?
Use only integral variables/values with the switch statement. In this example, we changed type of choice variable from float to int.
Correct code:
#include <stdio.h>
int main(void) {
int choice = 2;
switch(choice){
case 1:
printf("Case 1\n");
break;
case 2:
printf("Case 2\n");
break;
case 3:
printf("Case 3\n");
break;
case 4:
printf("Case 4\n");
break;
default:
printf("Case default\n");
}
return 0;
}
Example:
Output
How to fix?
Use only integral variables/values with the switch statement. In this example, we changed type of choice variable from float to int.
Correct code:
Output
need an explanation for this answer? contact us directly to get an explanation for this answer