Вычислить массив в функции - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Убил много времени,а оно все не работает и не работает. Задача программы вычислить ср. арифметическое массивов а10 b15 c20,но один массив обработать в функции (подпрограмме) Кому не трудно помогите,пожалуйста.
#include <stdio.h>
#include <time.h>
#include <math.h>
#include <stdlib.h>
int main(void) {
int a[10];
int b[15];
int c[20];
int i=0;
int p=0;
int o=0;
float SREDa=0;
float SREDb=0;
float SREDc=0;
for(i=0;i<=9;i++)
        {
    a[i]=rand()%99+1;
    SREDa+=a[i];
    printf("a[%d]=%d ",i,a[i]);
        } 
    printf("SRED=%f \n",SREDa/10);
for(p=0;p<=14;p++)
{
        b[p]=rand()%99+1;
        SREDb+=b[p];
        printf("b[%d]=%d ",p,b[p]);
} 
        printf("SRED=%f \n",SREDb/15);
for(o=0;o<=19;o++)
            {
                c[o]=rand()%99+1;
                SREDc+=c[o];
                printf("c[%d]=%d ",o,c[o]);
            } 
            printf("SRED=%f \n",SREDc/20);
}

Решение задачи: «Вычислить массив в функции»

textual
Листинг программы
#include <stdio.h>
#include <time.h>
#include <math.h>
#include <stdlib.h>
 
float srednee(int a[], int length){
            float SREDc=0;
            int o;
            for(o=0;o<20;o++)
            {
                a[o]=rand()%99+1;
                SREDc+=a[o];
                printf("c[%d]=%d \n",o,a[o]);
            }
    return SREDc/20;
}
 
int main(void) {
    int a[10], b[15], c[20];
    int i, p;
    float SREDa=0, SREDb=0, SREDc;
    for(i=0;i<10;i++)
    {
        a[i]=rand()%99+1;
        SREDa+=a[i];
        printf("a[%d]=%d \n",i,a[i]);
    }
        printf("SRED=%f \n",SREDa/10);
    for(p=0;p<15;p++)
    {
        b[p]=rand()%99+1;
        SREDb+=b[p];
        printf("b[%d]=%d \n",p,b[p]);
    }
        printf("SRED=%f \n",SREDb/15);
 
    printf("SRED=%f \n",srednee(c, 10));
    return 0;
}

Объяснение кода листинга программы

  1. Включаются необходимые заголовочные файлы: stdio.h, time.h, math.h, stdlib.h
  2. Определяется функция srednee с двумя аргументами: массив a и его длина length. Внутри функции объявляются две переменные: SREDc и o. SREDc будет использоваться для хранения суммы элементов массива, а o - для цикла.
  3. Запускается цикл for, который будет выполняться 20 раз. В каждой итерации выполняются следующие действия:
    • В массив a[o] записывается случайное число от 1 до 99 с помощью функции rand().
    • К переменной SREDc прибавляется значение a[o].
    • С помощью функции printf() выводится сообщение с индексом элемента массива и его значением.
  4. В функции main() объявляются три массива: a, b и c.
  5. Запускаются три цикла for для заполнения массивов a и b случайными числами и вычисления их суммы SREDa и SREDb соответственно.
  6. Выводится сообщение с суммой SREDa/10.
  7. Выводится сообщение с суммой SREDb/15.
  8. Вызывается функция srednee с массивом c и его длиной 10. Результат сохраняется в переменной SREDc.
  9. Выводится сообщение с значением SREDc.
  10. Функция main() возвращает 0, что означает успешное завершение работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.75 из 5
Похожие ответы