编写程序。读入用户输入的10个整数存入数组中,并对数组求和。
要求实现3个数组求和方法。
//求数组a中所有元素的和
static int sum(int[] a){
}
//求数组a中下标从start开始到数组末尾的元素的和
static int sum(int[] a, int start){
}
//求数组a中下标从start开始到end-1的元素的和
static int sum(int[] a, int start, int end){
}
裁判测试程序样例:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int[] a = new int[10];
int start,end;
for(int i = 0;i < a.length; i++){
a[i] = input.nextInt();
}
System.out.println(sum(a));
start = input.nextInt();
System.out.println(sum(a, start));
start = input.nextInt();
end = input.nextInt();
System.out.println(sum(a, start, end));
}
/* 请在这里填写答案 */
}
输入样例:
1 2 3 4 5 6 7 8 9 10
5
5 8
输出样例:
55
40
21
参考代码+注释
//求数组a中所有元素的和
static int sum(int[] a){
int su=0;
for(int i=0;i<a.length;i++)
su+=a[i];
return su;
}
//求数组a中下标从start开始到数组末尾的元素的和
static int sum(int[] a, int start){
int su=0;
if(start<0)start=0; //需要判断是否为有效边界!!!坑点!!!
for(int i=start;i<a.length;i++)
su+=a[i];
return su;
}
//求数组a中下标从start开始到end-1的元素的和
static int sum(int[] a, int start, int end){
int su=0;
if(start<0)start=0;
if(end>a.length)end=a.length; //需要判断是否为有效边界!!!坑点!!!
for(int i=start;i<end;i++)
su+=a[i];
return su;
}