StudyLover
  • Home
  • Study Zone
  • Profiles
  • Typing Tutor
  • Contact us
  • Sign in
StudyLover Program #23 (U3): Array Statistics via Functions
Download
  1. C Programming
  2. C Programming Practice
Program #22 (U3): Reverse an Array In-Place (two pointers) : Program #24 (U3): Matrix Addition and Subtraction
C Programming Practice

Task: Implement functions for sum, average, min, and max; pass the array to each. Print all metrics in a single summary line.

 
#include <stdio.h>

#include <limits.h>

 
long long arr_sum(const int a[], int n) {

    long long s = 0;

    for (int i = 0; i < n; ++i) s += a[i];

    return s;

}

double arr_avg(const int a[], int n) { return n ? (arr_sum(a,n)/(double)n) : 0.0; }

int arr_min(const int a[], int n) {

    int m = INT_MIN; if (!n) return m;

    m = a[0]; for (int i = 1; i < n; ++i) if (a[i] < m) m = a[i]; return m;

}

int arr_max(const int a[], int n) {

    int m = INT_MAX; if (!n) return m;

    m = a[0]; for (int i = 1; i < n; ++i) if (a[i] > m) m = a[i]; return m;

}

 
int main(void) {

    int N, a[200];

    printf("Enter N (1..200): ");

    if (scanf("%d", &N) != 1 || N <= 0 || N > 200) { printf("Invalid N.\n"); return 0; }

    printf("Enter %d integers: ", N);

    for (int i = 0; i < N; ++i) scanf("%d", &a[i]);

 
    long long s = arr_sum(a, N);

    double avg = arr_avg(a, N);

    int mn = arr_min(a, N), mx = arr_max(a, N);

 
    printf("Sum=%lld, Avg=%.2f, Min=%d, Max=%d\n", s, avg, mn, mx);

    return 0;

}

 

 

Program #22 (U3): Reverse an Array In-Place (two pointers) Program #24 (U3): Matrix Addition and Subtraction
Our Products & Services
  • Home
Connect with us
  • Contact us
  • +91 82955 87844
  • Rk6yadav@gmail.com

StudyLover - About us

The Best knowledge for Best people.

Copyright © StudyLover
Powered by Odoo - Create a free website