Language: C

#include <stdio.h>
#include <math.h>

typedef struct {
    double x;
    double y;
} point_t;

// result[0]: px
// result[1]: py
// result[2]: r
void alg ( point_t* data, double* result )
{
    double a = sqrt( pow( data[0].x - data[1].x ) + pow( data[0].y - data[1].y ) );
    double b = sqrt( pow( data[0].x - data[2].x ) + pow( data[0].y - data[2].y ) );
    double c = sqrt( pow( data[1].x - data[2].x ) + pow( data[1].y - data[2].y ) );
    double s = fabs( ( ( data[1].x - data[0].x ) * ( data[2].y - data[0].y ) - ( data[2].x - data[0].x ) * ( data[1].y - data[0].y ) ) / 2 );
    result[0] = ( pow(a,2) * ( pow(b,2) + pow(c,2) - pow(a,2) ) * data[0].x
                  + pow(b,2) * ( pow(c,2) + pow(a,2) - pow(b,2) ) * data[1].x
                  + pow(c,2) * ( pow(a,2) + pow(b,2) - pow(c,2) ) * data[2].x
                ) / ( 16 * pow(s,2) );
    result[1] = ( pow(a,2) * ( pow(b,2) + pow(c,2) - pow(a,2) ) * data[0].y
                  + pow(b,2) * ( pow(c,2) + pow(a,2) - pow(b,2) ) * data[1].y
                  + pow(c,2) * ( pow(a,2) + pow(b,2) - pow(c,2) ) * data[2].y
                ) / ( 16 * pow(s,2) );
    result[2] = ( a * b * c ) /
                 sqrt( ( a + b + c )
                       * ( - a + b + c )
                       * ( a - b + c )
                       * ( a + b - c ) );
}

double round_d ( double input )
{
    if ( input >= 0.0 )
    {
        return floor( input * 1000 + 0.5 ) / 1000;
    }
    else
    {
        return floor( fabs( input ) * 1000 + 0.5 ) / 1000 * -1.0;
    }
}

int main ( void )
{
    int i, linenum = 0;
    double result[3];
    point_t points[3];

    scanf( "%d", &linenum );

    for ( i = 0; i < linenum; i++ )
    {
        if ( scanf( "%lf %lf %lf %lf %lf %lf",
                &points[0].x, &points[0].y,
                &points[1].x, &points[1].y,
                &points[2].x, &points[2].y )
             == EOF )
        {
            fputs( "Syntax Error", stderr );
            return 1;
        }

        alg( points, result );

        printf( "%.3lf %.3lf %.3lf\n",
                round_d(result[0]),
                round_d(result[1]),
                round_d(result[2]) );
    }

    return 0;
}

Compiler output:
main.c: In function 'alg':
main.c:14:22: error: too few arguments to function 'pow'
   14 |     double a = sqrt( pow( data[0].x - data[1].x ) + pow( data[0].y - data[1].y ) );
      |                      ^~~
In file included from /usr/include/features.h:523,
                 from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
                 from /usr/include/stdio.h:28,
                 from main.c:1:
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:173:1: note: declared here
  173 | __MATHCALL_VEC (pow,, (_Mdouble_ __x, _Mdouble_ __y));
      | ^~~~~~~~~~~~~~
main.c:14:53: error: too few arguments to function 'pow'
   14 |     double a = sqrt( pow( data[0].x - data[1].x ) + pow( data[0].y - data[1].y ) );
      |                                                     ^~~
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:173:1: note: declared here
  173 | __MATHCALL_VEC (pow,, (_Mdouble_ __x, _Mdouble_ __y));
      | ^~~~~~~~~~~~~~
main.c:15:22: error: too few arguments to function 'pow'
   15 |     double b = sqrt( pow( data[0].x - data[2].x ) + pow( data[0].y - data[2].y ) );
      |                      ^~~
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:173:1: note: declared here
  173 | __MATHCALL_VEC (pow,, (_Mdouble_ __x, _Mdouble_ __y));
      | ^~~~~~~~~~~~~~
main.c:15:53: error: too few arguments to function 'pow'
   15 |     double b = sqrt( pow( data[0].x - data[2].x ) + pow( data[0].y - data[2].y ) );
      |                                                     ^~~
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:173:1: note: declared here
  173 | __MATHCALL_VEC (pow,, (_Mdouble_ __x, _Mdouble_ __y));
      | ^~~~~~~~~~~~~~
main.c:16:22: error: too few arguments to function 'pow'
   16 |     double c = sqrt( pow( data[1].x - data[2].x ) + pow( data[1].y - data[2].y ) );
      |                      ^~~
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:173:1: note: declared here
  173 | __MATHCALL_VEC (pow,, (_Mdouble_ __x, _Mdouble_ __y));
      | ^~~~~~~~~~~~~~
main.c:16:53: error: too few arguments to function 'pow'
   16 |     double c = sqrt( pow( data[1].x - data[2].x ) + pow( data[1].y - data[2].y ) );
      |                                                     ^~~
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:173:1: note: declared here
  173 | __MATHCALL_VEC (pow,, (_Mdouble_ __x, _Mdouble_ __y));
      | ^~~~~~~~~~~~~~