Другие языки программирования и технологии

Помогите сделать функцию для массива.

#include <conio.h>
#include <stdio.h>
#include <math.h>
int main()
{
float A[30],max,X,sum=0;
int Nmax, n,i;
bool flag = false;
while(1)
{
printf("n=");
scanf("%d",&n);
if (n>0 && n
#include <stdio.h>
#include <locale.h>
#include <float.h>
#include <stdlib.h>

#define MAXSIZE 1024

struct vector {
    float array[MAXSIZE];
    int limit;
};

typedef struct vector VECTOR;
typedef VECTOR* PVECTOR;

PVECTOR set_size(int, int);
void input(PVECTOR);
void output(PVECTOR);
float maximum(PVECTOR);
double sum(PVECTOR);

int main() {
    int size;
    PVECTOR v = NULL;
    setlocale(LC_CTYPE, "Russian_Russia.1251");
    printf(" Введите размер массива: ");
    scanf_s("%i", &size);
    if (v = set_size(size, MAXSIZE)) {
        input(v);
        output(v);
        printf(" Максимум: %f\n", maximum(v));
        printf(" Сумма: %f\n", sum(v));
        free(v);
        v = NULL;
    }
    fflush(stdin);
    getchar();
    return 0;
}

PVECTOR set_size(int size, int max_size) {
    PVECTOR v = NULL;
    if (max_size < size) return v;
    if (v = (PVECTOR)malloc(sizeof(VECTOR))) v->limit = size;
    return v;
}

void input(PVECTOR v) {
    int n;
    for (n = 0; n < v->limit; ++n) {
        printf(" vector[%i] -> ", n);
        scanf_s("%f", &v->array[n]);
    }
    system("cls");
}

void output(PVECTOR v) {
    int n;
    for (n = 0; n < v->limit; ++n) printf(" %f\n", v->array[n]);
    printf("\n");
}

float maximum(PVECTOR v) {
    int n;
    float max = FLT_MIN;
    for (n = 0; n < v->limit; ++n) if (max < v->array[n]) max = v->array[n];
    return max;
}

double sum(PVECTOR v) {
    int n;
    double sum = 0;
    for (n = 0; n < v->limit; ++n) sum += v->array[n];
    return sum;
}
Birzhan Sakipkaliev
Birzhan Sakipkaliev
99 820
Лучший ответ
Александр Павленко спасибо, только можете сказать, что такое "PVECTOR v, fflush, typedef, struct vector" мы такого просто ещё не проходили.
Передавать в функцию два параметра: указатель на массив (как константу) и число элементов в нём.

Дальше сами сообразите.