)编写递归函数:int sum(int n);求1+2+3+..+n的值,并用主函数测试之 c语言
时间: 2024-05-06 19:15:29 浏览: 72
以下是递归函数sum的实现代码:
```c
int sum(int n) {
if (n == 1) {
return 1;
} else {
return n + sum(n-1);
}
}
```
主函数测试代码如下:
```c
#include <stdio.h>
int main() {
int n;
printf("Enter a positive integer: ");
scanf("%d", &n);
printf("Sum of 1 to %d is %d", n, sum(n));
return 0;
}
```
当用户输入一个正整数n后,程序会输出1到n的和。
相关问题
编写递归函数:int sum(int n); 求1+2+3+...+n的值,并用主函数测试之
以下是递归函数 `sum` 的实现:
```c++
int sum(int n) {
if(n == 1) {
return 1;
}
else {
return n + sum(n-1);
}
}
```
该函数的思路是:当 `n` 为 1 时,返回 1;否则返回 `n` 与 `sum(n-1)` 的和。这样就可以累加 1 到 `n` 的值了。
以下是主函数的测试代码:
```c++
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入 n:" << endl;
cin >> n;
cout << "1+2+3+...+" << n << "=" << sum(n) << endl;
return 0;
}
```
运行该程序,可以输入一个正整数 `n`,然后程序会输出 1 到 `n` 的和。
编写递归函数:int sum(int n); 求1+2+3+...+n的值,并用主函数测试之。
下面是递归函数 sum 的代码:
```
int sum(int n) {
if (n == 1) {
return 1;
} else {
return n + sum(n-1);
}
}
```
该函数首先判断 n 是否等于 1,如果是,则返回 1。否则,返回 n 加上 sum(n-1) 的结果。
下面是主函数测试的代码:
```
#include <stdio.h>
int main() {
int n;
printf("请输入一个正整数 n:");
scanf("%d", &n);
printf("1+2+3+...+%d=%d\n", n, sum(n));
return 0;
}
```
在主函数中,首先提示用户输入一个正整数 n,然后调用 sum 函数计算 1+2+3+...+n 的值,并输出结果。
阅读全文