]>
Commit | Line | Data |
---|---|---|
7be570e7 JM |
1 | /* This is a sample program for the HP WDB debugger. */ |
2 | ||
3 | #include <stdio.h> | |
4 | #include <stdlib.h> | |
5 | ||
6 | #ifdef PROTOTYPES | |
7 | extern int sum(int *, int, int); | |
8 | #else | |
9 | extern int sum(); | |
10 | #endif | |
11 | ||
12 | #define num 10 | |
13 | ||
14 | static int my_list[num] = {3,4,2,0,2,1,8,3,6,7}; | |
15 | ||
16 | #ifdef __STDC__ | |
17 | void print_average(int *list, int low, int high) | |
18 | #else | |
19 | void print_average(list, low, high) | |
20 | int *list, low, high; | |
21 | #endif | |
22 | { | |
23 | int total = 0, num_elements = 0, average = 0; | |
24 | total = sum(list, low, high); | |
25 | num_elements = high - low; /* note this is an off-by-one bug */ | |
26 | ||
27 | average = total / num_elements; | |
28 | printf("%10.d\n", average); | |
29 | } | |
30 | ||
31 | #ifdef __STDC__ | |
32 | int main(void) | |
33 | #else | |
34 | main () | |
35 | #endif | |
36 | { | |
37 | char c; | |
38 | int first = 0, last = 0; | |
39 | last = num-1; | |
40 | ||
41 | /* Try two test cases. */ | |
42 | print_average (my_list, first, last); | |
43 | print_average (my_list, first, last - 3); | |
44 | ||
45 | exit(0); | |
46 | } |