Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
Solved

# Exit from program when number is not in the loop

Posted on 2004-08-18
Medium Priority
289 Views
Now what am I doing wrong? I had this so that if I entered in any other number except for 0-5 that it would ask me to select another number? I used the while loop the first time and now I cannot get it back. I never should have changed it around the second time. Thanks

/*Select a currency conversion type by code number 8/11/04*/
#include <stdio.h>
int main(void)
{

char option;
EUR=1;
GBP=2;
JPY=3;
RUR=5;

fEUR=0.829643f;
fGBP=0.548242f;
fJPY=110.631f;
fRUR=29.1800f;
fUS=1.00f;
printf("Select a currency type\n\n");
printf("1=European Euro 2=United Kingdom Pound 3=Japanese Yens 4=Canadian Dollars 5=Russian Rubles\n\n");
printf("Enter 0 to exit\n\n");

while(1){

option=getch();
switch(option)
{
case '1':
printf("The selected currency type is the European Euro of %f equivalent to %f US  Dollar\n",fEUR,fUS);
break;
case '2':
printf("The selected currency type is the United Kingdom Pound of %f equivalent to %f US  Dollar\n",fGBP,fUS);
break;
case'3':
printf("The selected currency type is the Japanese Yens of %f equivalent to %f US  Dollar\n",fJPY,fUS);
break;
case'4':
printf("The selected currency type is the Canadian Dollars of %f equivalent to %f US  Dollar\n",fCAD,fUS);
break;
case '5':
printf("The selected currency type is the Russian Rubles of %f equivalent to %f US  Dollar\n",fRUR,fUS);
break;
default:
return (0);
break;
}
}
getch();
return 0;
}
0
Question by:RebeccaFusco
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 2
• 2

LVL 9

Expert Comment

ID: 11837380
Change  the default case :
>>
default:
return (0);  //here return 0 returns for main and the program ends
break;
<<

to:

default:
break;

and add a case for '0'

case '0':exit(0);//or return 0;

case '0' should be before the default case.
0

LVL 7

Expert Comment

ID: 11837394
Your 'default' case, which is used when the user does not enter 1, 2, 3, 4 or 5 has "return 0;", which returns from main, effectively terminating your program.

Make the 'default' case do nothing, ie. remove the "return(0);" line. Also make sure that you have a "case '0'" with return(0); so the program can exit :).
0

Author Comment

ID: 11837466
I think I did the right thing and it still will not tell me that a wrong selection is invalid? Thanks

/*Select a currency conversion type by code number 8/11/04*/
#include <stdio.h>
int main(void)
{

char option;
EUR=1;
GBP=2;
JPY=3;
RUR=5;

fEUR=0.829643f;
fGBP=0.548242f;
fJPY=110.631f;
fRUR=29.1800f;
fUS=1.00f;
printf("Select a currency type\n\n");
printf("1=European Euro 2=United Kingdom Pound 3=Japanese Yens 4=Canadian Dollars 5=Russian Rubles\n\n");

while(1){

option=getch();
switch(option)
{
case '1':
printf("The selected currency type is the European Euro of %f equivalent to %f US  Dollar\n",fEUR,fUS);
break;
case '2':
printf("The selected currency type is the United Kingdom Pound of %f equivalent to %f US  Dollar\n",fGBP,fUS);
break;
case'3':
printf("The selected currency type is the Japanese Yens of %f equivalent to %f US  Dollar\n",fJPY,fUS);
break;
case'4':
printf("The selected currency type is the Canadian Dollars of %f equivalent to %f US  Dollar\n",fCAD,fUS);
break;
case '5':
printf("The selected currency type is the Russian Rubles of %f equivalent to %f US  Dollar\n",fRUR,fUS);
break;
case '0':
printf("exiting...\n");
return (0);
break;
default:

}
}
getch();
return 0;
}
0

LVL 9

Accepted Solution

ankuratvb earned 1000 total points
ID: 11837487
If you want a message,use:
default:
printf("Invalid Choice\n");
break;
0

Author Comment

ID: 11837523
Roger that :-) Thank you so..much. I do not know how I did it before but it was not like you have it. Somehow I used a loop but your way is great and so simple. The simple things slways seem to be the hardest things for me  to do.

/*Select a currency conversion type by code number 8/11/04*/
#include <stdio.h>
int main(void)
{

char option;
EUR=1;
GBP=2;
JPY=3;
RUR=5;

fEUR=0.829643f;
fGBP=0.548242f;
fJPY=110.631f;
fRUR=29.1800f;
fUS=1.00f;
printf("Select a currency type\n\n");
printf("1=European Euro 2=United Kingdom Pound 3=Japanese Yens 4=Canadian Dollars 5=Russian Rubles\n\n");

while(1){

option=getch();
switch(option)
{
case '1':
printf("The selected currency type is the European Euro of %f equivalent to %f US  Dollar\n",fEUR,fUS);
break;
case '2':
printf("The selected currency type is the United Kingdom Pound of %f equivalent to %f US  Dollar\n",fGBP,fUS);
break;
case'3':
printf("The selected currency type is the Japanese Yens of %f equivalent to %f US  Dollar\n",fJPY,fUS);
break;
case'4':
printf("The selected currency type is the Canadian Dollars of %f equivalent to %f US  Dollar\n",fCAD,fUS);
break;
case '5':
printf("The selected currency type is the Russian Rubles of %f equivalent to %f US  Dollar\n",fRUR,fUS);
break;
case '0':
printf("exiting...\n");
return (0);
break;
default:
printf("Invalid Choice\n");
break;

}
}
getch();
return 0;
}
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Have you thought about creating an iPhone application (app), but didn't even know where to get started? Here's how: ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ Important pre-programming comments: I’ve never tri…
This tutorial is posted by Aaron Wojnowski, administrator at SDKExpert.net.  To view more iPhone tutorials, visit www.sdkexpert.net. This is a very simple tutorial on finding the user's current location easily. In this tutorial, you will learn ho…
The goal of this video is to provide viewers with basic examples to understand opening and writing to files in the C programming language.
The goal of this video is to provide viewers with basic examples to understand and use conditional statements in the C programming language.
###### Suggested Courses
Course of the Month12 days, left to enroll