调试问题
#include "iostream.h "
unsigned long ack (unsigned long , unsigned long );
void main()
{
unsigned long a, b, result;
cout < < "please enter a and b: ";
cin > > a > > b;
result= ack(a,b);
cout < < "Ackermann( " < < a,b < < ")= " < < result < < endl;
}
unsigned long ack (unsigned long m, unsigned long n)
{
if (0 == m)
return n+1;
else if (0 == n)
return ack(m-1, 1);
else
return ack(m-1, ack(m,n-1));
}
编译出现如下错误?illegal, right operand has type 'char [3] ' 哪位大侠知道?
[解决办法]
cout < < "Ackermann( " < < a < < ", " < <b < < ")= " < < result < < endl;
[解决办法]
< < a,b < < "
---------
。。。
[解决办法]
#include "iostream.h "
unsigned long ack (unsigned long , unsigned long );
void main()
{
unsigned long a, b, result;
cout < < "please enter a and b: ";
cin > > a > > b;
result= ack(a,b);
cout < < "Ackermann( " < < a < < ", " < <b < < ")= " < < result < < endl;
}
unsigned long ack (unsigned long m, unsigned long n)
{
if (0 == m)
return n+1;
else if (0 == n)
return ack(m-1, 1);
else
return ack(m-1, ack(m,n-1));
}
应该这样子