简易计算器
首先简易计算器一般都有哪些功能 以及如果用代码实现
较简单
加法:定义三个变量 输入两个变量 c=a+b 输出c即可
减法:定义三个变量 输入两个变量 c=a-b 输出c即可
乘法:定义三个变量 输入两个变量 c=a*b 输出c即可
除法:定义三个变量 输入两个变量 c=a/b 输出c即可
较难
平发根:定义两个变量 要引用math头文件中的sqrt函数 求a的平方根
幂:定义两个变量 引用math头文件中的pow函数 求a的b次方
简易计算器应反复计算 故用上循环
#include <stdio.h>//头文件
#include <math.h>//数学头文件 用于引用数学函数
void main()//主函数
{
int a, b;//定义两个整型变量 用于存放两个操作数
char op;//定义一个字符变量 用于存放计算符号
while(1)//while 循环
{
printf("简易计算器\n");//输入简易计算器
printf("请输入两个操作数和运算符:\n");//请输入两个操作数和运算符
scanf_s("%d%c%d",&a,&op,10,&b);/*输入变量 a和b为两个操作数 op为操作符
vs编译器输入字符需要在后面定义字符的大小 如&op,10*/
double u = sqrt(a);//定义一个浮点型变量 u 并赋值
//此处用到了sqrt函数 用法:计算一个非负实数的平方根
/*sqrt使用时大多需要要强制类型转化,因为sqrt只支持double和float类型*/
double v = pow(a, b);//定义一个浮点型变量 v 并赋值
/*此处用到了pow函数 用法 计算a的b次方 原型为double pow(double x, double y) */
switch (op)//switch循环
/*如果switch上面的条件 能在case中找到,则直接跳到这个case这行
然后往下执行,直到遇到break结束,或者下面没有代码也结束。*/
{
case'+'://如果op与+匹配 执行下面语句
printf("%d+%d=%d\n", a, b, a + b);//打印加法的计算 c=a+b
break;//结束
case '-'://如果op与 - 匹配 执行下面语句
printf("%d-%d=%d\n", a, b, a - b);//打印减法的计算 c=a-b
break;//结束
case'*'://如果op与 * 匹配 执行下面语句
printf("%d*%d=%d\n", a, b, a * b);//打印乘法的计算 c=a*b
break;//结束
case'/'://如果op与 / 匹配 执行下面语句
printf("%d/%d=%d\n", a, b, a / b);//打印除法的计算 c=a/b
break;//结束
case'p'://如果op与 p 匹配 执行下面语句
printf("%f", u);//p 为定义的求平发根的符号 即 4p2 为求4的平方根 2p2=1.414 4p2=2
break;//结束
case'm'://如果op与 m 匹配 执行下面语句
printf("%f", v);//m 为定义的求幂的符号 即 2m2=4 2m3=8 2m4=16
break;//结束
default:/*如果switch上面的条件 不能在case中找到
则直接跳到这个default这行,然后往下执行,直到遇到break结束,或者下面没有代码也结束。*/
printf("输入错误的运算符,请重新输入!\n");//提示输入错误的运算符
break;//结束
}/*如果switch上面的条件 不能在case中找到,也没有default这一行,就直接跳出switch条件选择语句。*/
printf("是否还需要再次计算,如果需要,继续输入");//提示是否还需要输入值进行计算
}
}