编程实现一个简单的计算器。此计算器应具备基本计算功能:加法、减法、乘法、除法、阶乘等运算,请利用模块化程序设计的思想设计实现。提示:可利用有参有返回值函数实现计算器的各项功能。 注意,需要给出代码注释用c语言写
时间: 2023-12-06 15:45:07 浏览: 195
以下是用 C 语言实现一个简单的计算器的代码,其中包含加法、减法、乘法、除法、阶乘等运算:
```c
#include <stdio.h>
// 声明函数
int add(int, int);
int sub(int, int);
int mul(int, int);
float div(float, float);
int factorial(int);
int main() {
// 定义变量
int num1, num2;
char operator;
// 读取用户输入
printf("请输入表达式(例如 1 + 2):\n");
scanf("%d %c %d", &num1, &operator, &num2);
// 根据运算符调用相应的函数
switch (operator) {
case '+':
printf("%d + %d = %d\n", num1, num2, add(num1, num2));
break;
case '-':
printf("%d - %d = %d\n", num1, num2, sub(num1, num2));
break;
case '*':
printf("%d * %d = %d\n", num1, num2, mul(num1, num2));
break;
case '/':
printf("%d / %d = %.2f\n", num1, num2, div(num1, num2));
break;
case '!':
printf("%d! = %d\n", num1, factorial(num1));
break;
default:
printf("无效的运算符\n");
break;
}
return 0;
}
// 加法函数
int add(int num1, int num2) {
return num1 + num2;
}
// 减法函数
int sub(int num1, int num2) {
return num1 - num2;
}
// 乘法函数
int mul(int num1, int num2) {
return num1 * num2;
}
// 除法函数
float div(float num1, float num2) {
return num1 / num2;
}
// 阶乘函数
int factorial(int num) {
if (num == 0) {
return 1;
} else {
return num * factorial(num - 1);
}
}
```
注释:
1. `add()` 函数实现加法运算,接受两个整数作为参数,返回它们的和;
2. `sub()` 函数实现减法运算,接受两个整数作为参数,返回它们的差;
3. `mul()` 函数实现乘法运算,接受两个整数作为参数,返回它们的积;
4. `div()` 函数实现除法运算,接受两个浮点数作为参数,返回它们的商;
5. `factorial()` 函数实现阶乘运算,接受一个整数作为参数,返回它的阶乘;
6. 在 `main()` 函数中,先读取用户输入的表达式,并根据运算符调用相应的函数计算结果;
7. 注意在除法运算中,需要将结果保留两位小数,可以使用 `%.2f` 格式化输出浮点数。
阅读全文