Ошибка приведения типов - C (СИ) (150812)

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

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

#include <conio.h>
#include <stdio.h>
#include <locale.h>
#include <math.h>
int vvod(int *a[15],int*b[15],int i)
{  for(i=0; i<15; i++)  {
     printf("a[%d] = ", i);
     scanf("%d", *a[i]);
     printf("b[%d] = ", i);
     scanf("%d", *b[i]); // &a[i] 
    }
}
int obrab(int a[15],int b[15],int i,int ak,int ak1,int *mx,int *dx)
{
 
for(i=0; i<15; i++) {     
    ak=a[i]*b[i];
    *mx=*mx+ak;
    ak1=(a[i]-*mx)*b[i];
    *dx=*dx+ak1;
    } 
 
}
int output(int mx,int dx)
{
printf("Mx=%d",mx);
   printf("DX=%d",dx);
 
}
int main() {
  int a[15];
  int b[15];
  int i,mx,dx,ak,ak1;
 i=0; 
 
  vvod(&a,&b,i);
  obrab(&a,&b,i.ak,ak1,&mx,&dx);
  output(mx,dx);
  return 0;
 
}
36 15 C:\Users\Ìàêñ\Documents\777.cpp [Error] cannot convert 'int (*)[15]' to 'int**' for argument '1' to 'int vvod(int**, int**, int)' Вот такая вот ошибка

Решение задачи: «Ошибка приведения типов»

textual
Листинг программы
int vvod(int *a,int *b,int i);
scanf("%d", &a[i]);
scanf("%d", &b[i]);
vvod(a, b, i);

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

В данном коде представлена функция vvod, которая принимает три аргумента типа int: a, b и i. Функция считывает два целочисленных значения через функцию scanf и сохраняет их в массивах a и b соответственно. Первое считанное значение присваивается элементу массива a[i], второе значение присваивается элементу массива b[i]. После этого вызывается сама функция vvod с передачей массивов a, b и значения i в качестве аргументов.

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


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

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

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