要扩展sum函数的功能,可以添加额外的参数或重载函数。以下是一些常见的方法:
- 添加额外的参数:您可以添加一个额外的参数来指定要执行的操作,例如求和、平均值、最大值、最小值等。例如,您可以这样修改sum函数:
double calculate(int* arr, int size, char op) {
double result = 0;
for (int i = 0; i < size; i++) {
if (op == 'sum') {
result += arr[i];
} else if (op == 'average') {
result += arr[i];
} else if (op == 'max') {
result = max(result, arr[i]);
} else if (op == 'min') {
result = min(result, arr[i]);
}
}
return result;
}
- 重载函数:您也可以重载sum函数,创建多个具有不同功能的版本。例如,您可以这样定义sum函数的重载版本:
double sum(int* arr, int size) {
double result = 0;
for (int i = 0; i < size; i++) {
result += arr[i];
}
return result;
}
double average(int* arr, int size) {
double sum = 0;
for (int i = 0; i < size; i++) {
sum += arr[i];
}
return sum / size;
}
int max(int* arr, int size) {
int max = arr[0];
for (int i = 1; i < size; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
int min(int* arr, int size) {
int min = arr[0];
for (int i = 1; i < size; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
return min;
}
通过以上两种方式,您可以根据需要扩展sum函数的功能。