A-A+

下面的程序中定义了两个方法求自然数1~100的和。具体如下:int suml(int n);

2022-08-05 20:23:15 问答库 阅读 171 次

问题详情

下面的程序中定义了两个方法求自然数1~100的和。具体如下:int suml(int n);利用循环求1~n的和,int sum2(int n);利用递归方法求和1~n的和;在main()方法中调用这两个方法求1~100的和并显示。在程序的每条横线处填写一个适当的语句,使程序的功能完整。
public class Sum{
public static void main(String args[])
{
//1.调用suml(int n),求1~100的和
System.out.println("1~100的和:"+sum1(100));
//2,调用sum2(int n),求1~100的和
System.out.println("1~100的和:"+sum2(100));
}
static int suml(int n)
{
int result=0;
for(int i=1;i<=n;i++)
________________
retrun result;
}
static int sum2(int n)
{
if(______________)
return 1;
else
_____________
}
}请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:result+=i;n==1return n+sum2(n-1);
result+=i;n==1return n+sum2(n-1); 解析:本题主要考查递归调用的算法及for循环语句的使用。解答本题的关键是热练掌握递归调用的算法及for循环语句的使用.在本题中,result+=i;语句的功能是累加求和,if(n==1)语句的功能是判断当n==1时,累加和为1,return n+sum2(n-1);语句的功能是递归调用sum2(int n)方法求和。

考点:自然数,定义