#include /*是指标准库中输入输出流的头文件*/
void main()
{
char command_begin;/*开始字符*/
double first_number; /*第一个数*/
char character;/*运算符(+、-、*、/)*/
double second_number;/*第二个数*/
double value;/*计算结果*/
printf("简单计算器程序\n----------------\n");
printf("在'>' 提示后输入一个命令字符\n");/*输出提示信息*/
printf("是否开始?(Y/N)>");/*输出提示信息*/
scanf("%c",&command_begin); /*输入Y/N; */
while(command_begin=='Y'||command_begin=='y') { /*当接收Y/y命令时执行计算器程序*/
printf("请输入一个简单的算式:");/*输出提示信息*/
scanf("%lf%c%lf",&first_number,&character,&second_number); /*输入一个算式,如3+5*/
switch(character) { /*判断switch语句的处理命令*/
case '+':/*当输入运算符为"+"时,执行如下语句*/
value=first_number+second_number;/*进行加法运算*/
printf("等于%lf\n",value);
break;/*转向switch语句的下一条语句*/
case '-':/*当输入运算符为"-"时,执行如下语句*/
value=first_number-second_number;/*进行减法运算*/
printf("等于%lf\n",value);
break;/*转向switch语句的下一条语句*/
case '*':/*当输入运算符为"*"时,执行如下语句*/
value=first_number*second_number;/*进行乘法运算*/
printf("等于%lf\n",value);
break;/*转向switch语句的下一条语句*/
case '/':/*当输入运算符为"/"时,执行如下语句*/
while(second_number==0){/*若除数为零,重新输入算式,直到除数不为零为止*/
printf("除数为零,请输入一个算式:");/*输出提示信息*/
scanf("%lf%c%lf",&first_number,&character,&second_number); /*输入一个算式,如3+5*/
}
value=first_number/second_number;/*进行除法运算*/
printf("等于%lf\n",value);
break;/*转向switch语句的下一条语句*/
default:
printf("非法输入!\n");/*当输入命令为其他字符时,执行如下语句*/
}//结束switch语句
printf("是否继续运算?(Y/N)>");/*输出提示信息*/
fflush(stdin);//清空缓冲区
scanf("%c",&command_begin);/*输入命令类型如y/Y*/
}//结束while循环语句
printf("程序退出!\n"); /*退出循环时显示提示信息*/
}