循环执行次数 n(n+1)/2

int main(void)
{
	int n = 3;
	int i, j;
	for ( i = 0; i < n; i++)
		for (j = i; j < n; j++)
			printf("i=%d,j=%d\n",i,j);

	system("pause");
	return 0;
}
/*
i=0,j=0
i=0,j=1
i=0,j=2
i=1,j=1
i=1,j=2
i=2,j=2
请按任意键继续. . .


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用以下代码来计算: 使用 do-while 循环: #include <stdio.h> #include <math.h> int main() { int i = 1; double sum = , term; do { term = 1. / (i * (i + 1) * (i + 2)); sum += term; i++; } while (i <= 20); printf("前20项之和为:%lf", sum); return ; } 使用 for 循环: #include <stdio.h> #include <math.h> int main() { double sum = , term; for (int i = 1; i <= 20; i++) { term = 1. / (i * (i + 1) * (i + 2)); sum += term; } printf("前20项之和为:%lf", sum); return ; } ### 回答2: 使用do-while循环计算前20项的和: 首先,我们定义一个变量sum来表示求和结果,并将sum初始值设为0。 然后设置一个计数器变量i,并将其初始值设为1。 进入do-while循环,首先计算i的阶乘,即factorial,可以使用一个变量temp来不断累积i的值并计算阶乘。 然后将1/factorial加到sum中,即将1/factorial累加到sum中。 接着将i加1,继续下一次循环执行do-while循环直到i的值达到20,完成计算前20项的和。 最后输出sum的值,即为所求的结果。 使用for循环计算前20项的和: 在for循环中,我们同样需要定义一个变量sum来表示求和结果,并将sum初始值设为0。 设置一个计数器变量i,并将其使用for循环的初始化表达式设为1,判断条件表达式设为i<=20,增量表达式设为i++,控制循环执行次数。 在每次循环中,我们先计算i的阶乘,即factorial,使用一个变量temp来不断累积i的值并计算阶乘。 然后将1/factorial加到sum中,即将1/factorial累加到sum中。 当循环执行20次后,结束循环,最后输出sum的值,即为所求的结果。 两种循环方式均可以得到相同的结果,即1 1/2! 1/3! 1/4!十...的前20项之和。 ### 回答3: 使用do-while循环计算1 + 1/2! + 1/3! + 1/4! + ... 的前20项之和,可以按照以下步骤进行操作: 1. 初始化相关变量:定义变量sum表示总和,n表示项数,fact表示阶乘; 2. 使用do-while循环从n=1开始,执行20次循环; 3. 在循环中,计算当前项的阶乘fact,将1/fact加到sum中,然后将n增加1; 4. 输出结果sum。 以下是使用do-while循环计算的示例代码: ```java public class DoWhileSum { public static void main(String[] args) { int n = 1; double sum = 1; double fact = 1; do { for (int i = 1; i <= n; i++) { fact *= i; } sum += 1 / fact; n++; } while (n <= 20); System.out.println("前20项和为:" + sum); } } ``` 使用for循环计算1 + 1/2! + 1/3! + 1/4! + ... 的前20项之和,可以按照以下步骤进行操作: 1. 初始化相关变量:定义变量sum表示总和; 2. 使用for循环从n=1开始,执行20次循环; 3. 在循环中,计算当前项的阶乘fact,将1/fact加到sum中; 4. 输出结果sum。 以下是使用for循环计算的示例代码: ```java public class ForSum { public static void main(String[] args) { double sum = 1; for (int n = 2; n <= 20; n++) { double fact = 1; for (int i = 1; i <= n; i++) { fact *= i; } sum += 1 / fact; } System.out.println("前20项和为:" + sum); } } ``` 无论是使用do-while循环还是for循环,计算的结果都将是前20项和。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值