Switch Statement Question
Code:
#include <stdio.h>
int main()
{
//Hold Numeric Char entered by user
char c;
//holds boolean value for Done
int done;
//Holds the value of the total price
float total = 0;
//Prompt
printf("Hello, please enter your selection: \n");
printf("1 - Candy\n");
printf("2 - Beverage\n");
printf("3 - Hotdog\n");
printf("4 - Popcorn\n");
printf("0 - Done\n");
printf("Your Choices: \n");
//Variable done Initialized to 0(False)
done = 0;
//Get and Handle Input
while(!done)
{
//Get Input
c = getchar();
switch(c)
{
case '1':
printf("Candy\t$3.00\n");
total+=3;
break;
case '2':
printf("Beverage\t$5.50\n");
total+=5.5;
break;
case '3':
printf("Hotdog\t$10.00\n");
total+=10;
break;
case '4':
printf("Popcorn\t$4.99\n");
total+=4.99;
break;
case '0':
printf("Total: $%.2f\n", total);
printf("Please Pay at the Cashier, Thank You.");
done = 1;
break;
default:
printf("Improper Selection!");
break;
}
}
getchar();
return 0;
}
I'm Using break; on every case, but whenever i type in any number,
default is always executed despite the break statements...
Why is that? :S