编写一个能够循环执行的运算器程序,完成加法、减法、乘法和除法.两个操作数由用户从键盘上输入格式要:main (){ int option;do{ getOption ( ); //显示菜单,读选项if (option = 5){ getNumbers(…….);//读
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/10 18:18:27
![编写一个能够循环执行的运算器程序,完成加法、减法、乘法和除法.两个操作数由用户从键盘上输入格式要:main (){ int option;do{ getOption ( ); //显示菜单,读选项if (option = 5){ getNumbers(…….);//读](/uploads/image/z/5103852-60-2.jpg?t=%E7%BC%96%E5%86%99%E4%B8%80%E4%B8%AA%E8%83%BD%E5%A4%9F%E5%BE%AA%E7%8E%AF%E6%89%A7%E8%A1%8C%E7%9A%84%E8%BF%90%E7%AE%97%E5%99%A8%E7%A8%8B%E5%BA%8F%2C%E5%AE%8C%E6%88%90%E5%8A%A0%E6%B3%95%E3%80%81%E5%87%8F%E6%B3%95%E3%80%81%E4%B9%98%E6%B3%95%E5%92%8C%E9%99%A4%E6%B3%95.%E4%B8%A4%E4%B8%AA%E6%93%8D%E4%BD%9C%E6%95%B0%E7%94%B1%E7%94%A8%E6%88%B7%E4%BB%8E%E9%94%AE%E7%9B%98%E4%B8%8A%E8%BE%93%E5%85%A5%E6%A0%BC%E5%BC%8F%E8%A6%81%EF%BC%9Amain+%28%29%7B+int+option%3Bdo%7B+getOption+%28+%29%3B+%2F%2F%E6%98%BE%E7%A4%BA%E8%8F%9C%E5%8D%95%2C%E8%AF%BB%E9%80%89%E9%A1%B9if+%28option+%3D+5%29%7B+getNumbers%28%E2%80%A6%E2%80%A6.%29%3B%2F%2F%E8%AF%BB)
编写一个能够循环执行的运算器程序,完成加法、减法、乘法和除法.两个操作数由用户从键盘上输入格式要:main (){ int option;do{ getOption ( ); //显示菜单,读选项if (option = 5){ getNumbers(…….);//读
编写一个能够循环执行的运算器程序,完成加法、减法、乘法和除法.两个操作数由用户从键盘上输入
格式要:main ()
{ int option;
do
{ getOption ( ); //显示菜单,读选项
if (option = 5)
{ getNumbers(…….);//读两个操作数,若为
除法,判别除数不为零
若除数为零,要求用户
重新输入
calc(………);
// 完成运算,并返回结果
printResult(…………….);
} // 输出表达式及结果
} while ( option!=5);
}
编写一个能够循环执行的运算器程序,完成加法、减法、乘法和除法.两个操作数由用户从键盘上输入格式要:main (){ int option;do{ getOption ( ); //显示菜单,读选项if (option = 5){ getNumbers(…….);//读
楼主可能用的是TC6.0吧,一楼的程序很不错,不过需要在VC++里面运行,下面是我的可以在TC里面执行的代码,OPTION是只能用英文了呵呵!
注意!如果出现死循环,就用Ctrl+C来结束程序.
/*运算器程序*/
#include
#include
void getOption() /*显示菜单,读选项*/
{
printf("****OPTION****\n");
printf("1,ADD\n");
printf("2,MINUS\n");
printf("3,MULTIPLY\n");
printf("4,DIVIDE\n");
printf("5,EXIT\n");
printf("\n");
printf("Please input your option:\n");
}
/*读两个操作数,若为 除法,判别除数不为零 若除数为零,要求用户 重新输入*/
void getNumbers(float *a,float *b)
{
printf("input the first number:\n");
scanf("%f",a);
printf("input the second number:\n");
scanf("%f",b);
}
double calc(int c,float d,float e) /*完成运算,并返回结果*/
{
switch(c)
{
case 1:{return(d+e);}break;
case 2:{return(d-e);}break;
case 3:{return(d*e);}break;
case 4:{
if(e==0)
{
printf("The divisor is zero,please input again!\n\n\n");
return(0);
}
else
return(d/e);
} break;
case 5:{exit(0);}break;
default:return(0); break;
}
}
void printResult(int i,double f,float g,float h) /*输出表达式及结果*/
{
switch(i)
{
case 1:printf("RESULT:%g+%g=%g\n\n\n",g,h,f); break;
case 2:printf("RESULT:%g-%g=%g\n\n\n",g,h,f); break;
case 3:printf("RESULT:%g*%g=%g\n\n\n",g,h,f); break;
case 4:if(h!=0.)printf("RESULT:%g/%g=%g\n\n\n",g,h,f); break;
default:break;
}
}
int main()
{
int option;
float c1,c2;
double result;
do
{
getOption();
scanf("%d",&option);
if( option!=1&&
option!=2&&
option!=3&&
option!=4&&
option!=5){ printf("Wrong option!\n\n\n");continue;}
if(option!=5)
{
getNumbers(&c1,&c2);
result=calc(option,c1,c2);
printResult(option,result,c1,c2);
}
printf("Continue(1)?or exit(5)?:"); /*确认退出(5)还是继续计算(1)*/
scanf("%d",&option);
}
while(option!=5);
return(1);
}