/* File: sum3.c A simple recursive function to compute the sum of the elements of an array. */ #include int sum (int A[], int low, int high) { int part1, part2, mid ; if (high < low) return 0 ; if (low == high) return A[low] ; mid = (low + high) / 2 ; part1 = sum(A, low, mid) ; part2 = sum(A, mid+1, high) ; return part1 + part2 ; } main(){ int A[5] = {1, 4, 9, 3, 2} ; int s ; s = sum(A, 0, 4) ; printf("sum A[0..4] = %2d\n", s) ; s = sum(A, 0, 0) ; printf("sum A[0..0] = %2d\n", s) ; s = sum(A, 0, 1) ; printf("sum A[0..1] = %2d\n", s) ; }