C程序 计算自然数之和
在这里,我们将建立一个C语言程序,使用4种不同的方法计算自然数的总和,即:
1.使用while循环
2.使用for循环
3.使用递归法
4.使用功能
我们将在上述所有方法中保持相同的输入,并得到相应的输出。
输入:
n = 10
输出:
55
解释 :0+1+2+3+4+5+6+7+8+9+10的自然数之和=55
方法1:使用while循环
while循环执行语句,直到条件为假。
// C Program to demonstrate
// Sum of Natural Numbers
// using while loops
#include <stdio.h>
int main()
{
int i, s = 0;
int n = 10;
i = 1;
// while loop executes
// the statements until the
// condition is false
while (i <= n) {
// adding natural numbers
// up to given number n
s += i;
i++;
}
// printing the result
printf("Sum = %d", s);
return 0;
}
输出
Sum = 55
方法2:使用for循环
For循环最多迭代n次。
// C Program to demonstrate
// Sum of Natural Numbers
// using for loops
#include <stdio.h>
int main()
{
int i, s = 0;
int n = 10;
for (i = 0; i <= n; i++) {
// adding natural numbers
// up to given number n
s += i;
}
// printing the result
printf("Sum = %d", s);
return 0;
}
输出
Sum = 55
方法3:使用递归法
// C Program to demonstrate
// Sum of Natural Numbers
// using recursion
#include <stdio.h>
int sumofnaturalnumbers(int num)
{
if (num != 0)
// adding natural numbers up to given number n
return num + sumofnaturalnumbers(num - 1);
else
return num;
}
int main()
{
int number = 10;
// printing the result
printf("Sum = %d", sumofnaturalnumbers(number));
return 0;
}
输出
Sum = 55
方法4:使用函数
// C Program to demonstrate
// Sum of Natural Numbers
// using functions
#include <stdio.h>
int sumofnaturalnumbers(int num)
{
int i, s = 0;
for (i = 0; i <= num; i++) {
// adding natural numbers
// up to given number n
s += i;
}
// printing the result
printf("Sum = %d", s);
}
int main()
{
int number = 10;
// calling the function
sumofnaturalnumbers(number);
return 0;
}
输出
Sum = 55
方法5:使用公式n个自然数之和=n*(n+1)/2
// C Program to demonstrate
// Sum of Natural Numbers
#include <stdio.h>
int main()
{
int num = 10;
int s,x;
s=num*(num+1);
x=(int)(s/2);
printf("Sum = %d", x);
return 0;
}
输出
Sum = 55