Функция должна быть определена следующим образом:
int mul (int x, int y)
{
int p;
p = x * y;
return p;
}
То есть объявление локальной переменной p
должно быть внутри тела функции.
И вы должны включитьзаголовок <stdio.h>
, где объявлена функция printf
.
Учтите, что в общем случае умножение двух целых чисел может привести к переполнению.Так что лучшее определение функции может выглядеть следующим образом, как показано в демонстрационной программе.
#include <stdio.h>
long long int mul( int, int );
int main(void)
{
int a = 5, b = 10;
long long int c = mul( a, b );
printf( "multiplication of %d and %d is %lld\n" , a, b, c );
}
long long int mul( int x, int y )
{
return ( long long int )x * y;
}