加减乘除+菜单实现
#include<stdio.h>
#include<ctype.h>
double Arithmetic(char ch, double x, double y);
char Menu(void);
double input(void);
int main(void)
{
char ch;
double x,y;
while(ch=Menu())
{
printf("Enter first number:");
x=input();
printf("Enter second number:");
y=input();
printf("\n%.2f %c %.2f = %.2f\n",x, ch, y, Arithmetic(ch, x,y));
}
printf("done\n");
return 0;
}
double Arithmetic(char ch, double x, double y)
{
switch(ch)
{
case '+' :
return x+y;
case '-' :
return x-y;
case '*' :
return x*y;
case '/' :
return x/y;
default :
return 0;
}
}
char Menu(void)
{
char menu;
for(;;)
{
for(int i=0;i<80;i++)
putchar('*');
printf("\nEnter the number corresponding to the desired pay rate or action:\n");
printf("a) add s) subtract\n");
printf("m) multiply d) divide\n");
printf("q) quit\n");
for(int i=0;i<80;i++)
putchar('*');
putchar('\n');
menu=getchar();
switch(menu)
{
case 'a':
return '+';
case 'm':
return '*';
case 's':
return '-';
case 'd':
return '/';
case 'q':
return 0;
default:
{
printf("Enter Again!\n");
while(getchar()!='\n')continue;
}
}
}
}
double input(void)
{
char ch;
double x;
while(scanf("%lf", &x)==0)
{
while((ch=getchar)!='\n')
{
putchar(ch);
}
printf(" is not an number.\n");
printf("Please enter a number:");
}
return x;
}
posted on 2017-12-11 10:25 MACHINE_001 阅读(142) 评论(0) 编辑 收藏 举报