有关下面 C++ 代码说法错误的是( )。
// sumA()和sumB()用于求从1到N之和
#include <iostream>
using namespace std;
int sumA(int n) {
int sum = 0;
for (int i = 1; i < n + 1; i++)
sum += i;
return sum;
}
int sumB(int n) {
if (n == 1)
return 1;
else
return n + sumB(n - 1);
}
int main() {
int n = 0;
cin >> n;
cout << sumA(n) << " " << sumB(n) << endl;
return 0;
}
- A.
sumA()用循环方式求从 到 之和,sumB()用递归方式求从 到 之和。 - B. 默认情况下,如果输入正整数 ,能实现求从 到 之和。
- C. 默认情况下,如果输入正整数 ,能实现求从 到 之和。
- D. 一般说来,
sumA()的效率高于sumB()。