用c语言编写多功能计算器的代码
时间: 2023-10-07 21:11:02 浏览: 138
C语言多功能计算器
4星 · 用户满意度95%
以下是使用 C 语言编写的多功能计算器代码,支持加、减、乘、除、求余、阶乘、幂运算、开方、sin、cos、tan、log、ln 等常见数学运算。
```c
#include <stdio.h>
#include <math.h>
int main() {
char operator;
double num1, num2, result;
printf("请输入运算符 (+, -, *, /, %%, !, ^, sqrt, sin, cos, tan, log, ln): ");
scanf("%c", &operator);
switch(operator) {
case '+':
printf("请输入两个数: ");
scanf("%lf %lf", &num1, &num2);
result = num1 + num2;
printf("%.2lf + %.2lf = %.2lf", num1, num2, result);
break;
case '-':
printf("请输入两个数: ");
scanf("%lf %lf", &num1, &num2);
result = num1 - num2;
printf("%.2lf - %.2lf = %.2lf", num1, num2, result);
break;
case '*':
printf("请输入两个数: ");
scanf("%lf %lf", &num1, &num2);
result = num1 * num2;
printf("%.2lf * %.2lf = %.2lf", num1, num2, result);
break;
case '/':
printf("请输入两个数: ");
scanf("%lf %lf", &num1, &num2);
if(num2 == 0) {
printf("错误:除数不能为零");
} else {
result = num1 / num2;
printf("%.2lf / %.2lf = %.2lf", num1, num2, result);
}
break;
case '%':
printf("请输入两个数: ");
scanf("%lf %lf", &num1, &num2);
if(num2 == 0) {
printf("错误:除数不能为零");
} else {
result = fmod(num1, num2);
printf("%.2lf %% %.2lf = %.2lf", num1, num2, result);
}
break;
case '!':
printf("请输入一个正整数: ");
scanf("%lf", &num1);
result = 1;
while(num1 > 0) {
result = result * num1;
num1--;
}
printf("阶乘为 %.2lf", result);
break;
case '^':
printf("请输入两个数: ");
scanf("%lf %lf", &num1, &num2);
result = pow(num1, num2);
printf("%.2lf ^ %.2lf = %.2lf", num1, num2, result);
break;
case 's':
printf("请输入一个数: ");
scanf("%lf", &num1);
result = sqrt(num1);
printf("sqrt(%.2lf) = %.2lf", num1, result);
break;
case 'S':
printf("请输入一个数: ");
scanf("%lf", &num1);
result = sin(num1);
printf("sin(%.2lf) = %.2lf", num1, result);
break;
case 'C':
printf("请输入一个数: ");
scanf("%lf", &num1);
result = cos(num1);
printf("cos(%.2lf) = %.2lf", num1, result);
break;
case 'T':
printf("请输入一个数: ");
scanf("%lf", &num1);
result = tan(num1);
printf("tan(%.2lf) = %.2lf", num1, result);
break;
case 'l':
printf("请输入一个数: ");
scanf("%lf", &num1);
result = log10(num1);
printf("log(%.2lf) = %.2lf", num1, result);
break;
case 'L':
printf("请输入一个数: ");
scanf("%lf", &num1);
result = log(num1);
printf("ln(%.2lf) = %.2lf", num1, result);
break;
default:
printf("错误:无效的运算符");
}
return 0;
}
```
阅读全文