使用C语言编写可以实现加减乘除,三角函数,幂运算,根号运算的计算器
时间: 2023-12-10 12:05:45 浏览: 167
C语言实现计算器混合运算(含括号,加减乘除)
好的,以下是一个可以实现加减乘除,三角函数,幂运算和根号运算的计算器的C语言代码:
```
#include <stdio.h>
#include <math.h>
int main()
{
char operator;
double num1, num2, result;
printf("请输入要进行的运算符(+, -, *, /, sin, cos, tan, pow, sqrt): ");
scanf("%c", &operator);
printf("请输入要进行运算的两个数: \n");
scanf("%lf %lf", &num1, &num2);
switch(operator)
{
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
case '/':
if(num2 == 0)
{
printf("错误:除数不能为0!\n");
return 0;
}
result = num1 / num2;
break;
case 's':
result = sin(num1);
break;
case 'c':
result = cos(num1);
break;
case 't':
result = tan(num1);
break;
case 'p':
result = pow(num1, num2);
break;
case 'r':
if(num2 < 0)
{
printf("错误:根数不能为负数!\n");
return 0;
}
result = sqrt(num2);
break;
default:
printf("错误:无效的运算符!\n");
return 0;
}
printf("%.2lf %c %.2lf = %.2lf\n", num1, operator, num2, result);
return 0;
}
```
这个程序与之前的计算器程序类似,但是加入了三角函数,幂运算和根号运算。使用 `sin`,`cos` 和 `tan` 函数可以实现三角函数的计算,使用 `pow` 函数可以实现幂运算,使用 `sqrt` 函数可以实现根号运算。需要注意的是,对于除法运算,我们需要判断除数是否为0,对于根号运算,我们需要判断根数是否为负数。
另外,需要注意的是,由于输入的运算符可能是多个字符,例如 `sin`,`cos` 和 `tan`,因此我们需要使用字符数组来读取输入的运算符,并使用字符串比较函数 `strcmp` 来判断输入的运算符是哪个。例如,我们可以使用下面的代码来判断输入的运算符是否为 `sin`:
```
char op[4];
scanf("%s", op);
if(strcmp(op, "sin") == 0)
{
result = sin(num1);
}
```
阅读全文