负数进制,代码如下:
#include <stdio.h>

void cup ( __int64 n )
{

    
if ( n != 0 )
    
{
        
if ( n % 2 )
        
{
            cup ( (n
-1)/(-2) );
            printf ( 
"1" );
        }

        
else
        
{
            cup ( n
/(-2) );
            printf ( 
"0" );
        }

    }

}


int main ()
{

    __int64 n;

    
while ( scanf ( "%I64d"&n ) != EOF )
    
{
        
if ( n == 0 )
        
{
            printf ( 
"0\n" );
            
continue;
        }

        cup ( n );
        printf ( 
"\n" );
    }

    
return 0;
}