Загрузка...

Что делает этот код и где тут ошибка?

Тема в разделе C/C++ создана пользователем victorskala 24 мар 2021. 144 просмотра

  1. victorskala
    victorskala Автор темы 24 мар 2021 27 25 май 2019
    Код
    #include <stdio.h>
    #include <conio.h>
    void fn1(int n, float * x);
    float fn2(int n, float x[]);
    void fn3(int n, float * x);

    int main()
    { float z[]={1,2,3,4};
    int j;
    for (j=0;j<4;j++)
    printf(" %6.2f",z[j]);
    fn1(4,z);
    for (j=0;j<4;j++)
    printf("\n %6.2f",z[j]);
    printf("\n %6.2f",fn2(4,z));
    printf("\n %6.2f",fn3(4,z));
    for (j=0;j<4;j++)
    printf("\n %6.2f",z[j]);
    return 0;
    }
    /*******************************/
    void fn1(int n, float * x)
    { int i;
    for (i=0;i<n;i++)
    *x[i]= *x[i] * *x[i];
    }
    /*******************************/
    float fn2(int n, float x[])
    { int i, s=0;
    for (i=0;i<n;i++)
    s+=x[i];
    return s/n;
    }
    /*******************************/
    void fn3(int n, float *x)
    { int i, j;
    float t;
    for (i=1;i<n;i++)
    for (j=0;j<n-1;j++)
    if(x[i]>x[j]){
    t=x[i];
    x[i]=x[j];
    x[j]=t;
    }}

     
  2. XomkaPiroman
    XomkaPiroman 28 мар 2021 Ем 348 19 авг 2020
    Попробуй все функции перед main() поставить, а вот это убрать
    C
    void fn1(int n, float * x);
    float fn2(int n, float x[]);
    void fn3(int n, float * x);
     
    1. санябритва
      XomkaPiroman, так это прототипы функций, нахуй ты их убирать собрался
    2. XomkaPiroman
      санябритва, какая разница, можно функцию описать сверху, может компилятор ругается. Нормально общайся
    3. Посмотреть следующие комментарии (1)
  3. MindBender
    MindBender 28 мар 2021 48 5 авг 2019
    у тебя тут fn3 с возвращаемым значением void (ничего не вернёт соответственно),
    а в fn1 ты передаёшь указатель на переменную x, но в то же время итерируешься по x, как будто это массив
     
Top
Загрузка...