Possible solution
Content |
Functions for array operations
int printf(const char *, ...); void init_array(unsigned int n, int *x) { for (unsigned int i=0; i<n; ++i) { x[i] = i+1; } } void print_array(unsigned int n, const int *x) { for (unsigned int i=0; i<n; ++i) { printf("%5d ", x[i]); } printf("\n"); } int sum_array(unsigned int n, const int *x) { int sum = 0; for (unsigned int i=0; i<n; ++i) { sum += x[i]; } return sum; } int main() { int x[5]; // init x init_array(5, x); // print x print_array(5, x); // sum elements of x int sum = sum_array(5, x); printf("sum = %d\n", sum); }
heim$ gcc -Wall -std=c11 -o array2 array2.c heim$ ./array2 1 2 3 4 5 sum = 15 heim$