ORCA-C/Tests/Conformance/C9.3.0.1.CC

33 lines
564 B
C++

/* Conformance Test 9.3.0.1: Parameters, functions must be defined in time */
/* to call the function recursively. */
#include <stdio.h>
int iexp (int x, int y)
{
if (x == 0)
return 1;
if (y <= 1)
return x;
return iexp(x,y-1)*x;
}
int main(void)
{
if (iexp(2,5) != 32) goto Fail;
if (iexp(3,3) != 27) goto Fail;
if (iexp(1,50) != 1) goto Fail;
if (iexp(7,3) != 343) goto Fail;
printf ("Passed Conformance Test 9.3.0.1\n");
return 0;
Fail:
printf ("Failed Conformance Test 9.3.0.1\n");
}