现在的位置: 首页 > 综合 > 正文

二进制打印

2013年08月23日 ⁄ 综合 ⁄ 共 303字 ⁄ 字号 评论关闭
#include <stdio.h>

int main()
{
	int n, i;
	unsigned mask;

	scanf("%d", &n);
	/*
	 *这里写成sizeof(n) 是为了让代码能更好的有移植性,即和平台无关性
	 *因为不同平台sizeof int 值不一样
	 * */
	
	mask = 1 << (sizeof(n)*8 - 1);

	for (i = 0; i < sizeof(n)*8; i++)
	{
		/*
		   if (n & mask)
		   putchar('1');
		   else
		   putchar('0');
		   */
		//putchar(((n & mask) == 0) ? '0' : '1');
		putchar(((n & mask) != 0) ? '1' : '0');

		n <<= 1;
	}
	printf("\n");
}

抱歉!评论已关闭.