麻烦大神看下这个该怎么做,只有一个的话,return两数相加,这个加减乘除都要有,就不知道怎么办了
都要有就再加一个参数,传运算符。用switch...case判断下。
好像不明白楼主的意思,可以说的更详细一点吗?
我想我明白你的意思了,你是想通过一个函数。计算出四个值,并且一次性返回四个值,是么?
可以参考以下代码:
#include
// 当然,你也可以不用结构体,定义一个数组也是可以的(例:数组的第一个值表示和,第二个值表示差......)
// 我用的是结构体
// 定义一个结构体类型的ReturnValue, 当做返回值类型
typedef struct ReturnValue {
float sum; // 和
float dif; // 差
float pro; // 积
float div; // 商
}ReturnValue;
ReturnValue Operation(float number1, float number2){
ReturnValue rv = {0,0,0,0};
rv.sum = number1 + number2;
rv.dif = number1 - number2;
rv.pro = number1 * number2;
rv.div = number1 / number2;
return rv;
}
int main(int argc, const char * argv[]) {
// 设置一个ReturnValue类型的value,来接受从Operation返回的返回值
ReturnValue value = Operation(2, 3);
// 不是四个值都非要用到,选择你需要的即可,但是四个值都存在
printf("%.2f\n", value.sum);// 输出和
printf("%.2f\n", value.dif);// 输出差
printf("%.2f\n", value.pro);// 输出积
printf("%.2f\n", value.div);// 输出商
return 0;
}