C语言计算器程序编写(源码+解析)
使用C语言编写一个程序,模拟具有加、减、乘、除 4 种功能的简单计算器。
我们先给出完整的代码:
当进行除法运算时,若除数为零,程序则会提醒用户再一次输入算式,直到除数不为零为止。
当输入的运算符为其他字符时,程序就会提醒“非法输入”。是否进行运算,可根据提示按 Y 或 y 即可。若此时输入的符号为除了 Y 和 y 的其他符号,计算器结束运行。
运行结果示例:
本范例用选择和循环语句实现了程序功能。该程序首先进行程序的初始化操作,然后进行循环设置,在循环体内完成处理命令、显示运算结果、提示用户输入命令字符以及读命令字符等工作。程序总的控制结构是一个 while 循环,而对于不同的命令处理,则用多分支的 switch 语句来完成,它嵌套在循环语句当中。
声明:《C语言系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。
我们先给出完整的代码:
#include <stdio.h> int main() { char command_begin; /*开始字符*/ double first_number; /*第1个数*/ char character; /*运算符(+、-、*、/)*/ double second_number; /*第2个数*/ 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); /*输入一个算式*/ 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); /*输入一个算式*/ } 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"); /*退出循环时显示提示信息*/ }编译、连接、运行程序,根据提示输入 Y 或 y 时,开始计算,从键盘上输入一个简单的算式,如 5/3,按【Enter】键,即可计算出结果。按 Y 或 y,可继续使用计算器运算。
当进行除法运算时,若除数为零,程序则会提醒用户再一次输入算式,直到除数不为零为止。
当输入的运算符为其他字符时,程序就会提醒“非法输入”。是否进行运算,可根据提示按 Y 或 y 即可。若此时输入的符号为除了 Y 和 y 的其他符号,计算器结束运行。
运行结果示例:
简单计算器程序
----------------
在'>' 提示后输入一个命令字符
是否开始?(Y/N)>y
请输入一个简单的算式:5/3
等于1.666667
是否继续运算?(Y/N)>y
请输入一个简单的算式:6*9
等于54.000000
是否继续运算?(Y/N)>n
程序退出!
本范例用选择和循环语句实现了程序功能。该程序首先进行程序的初始化操作,然后进行循环设置,在循环体内完成处理命令、显示运算结果、提示用户输入命令字符以及读命令字符等工作。程序总的控制结构是一个 while 循环,而对于不同的命令处理,则用多分支的 switch 语句来完成,它嵌套在循环语句当中。
声明:《C语言系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。