【C練】整数の各ビットを出力

1046 ワード

【整数形式で出力】再帰的に実現
#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
int print(int num)
{
	if (num <= 9)
	{
		printf("%d", num);
	}
	else
	{
		print(num / 10);
		printf(" %d", num % 10);
	}
}
int main()
{
	int i = 0;
	int num = 0;
	printf("       :");
	scanf("%d", &num);
	printf("         :");	
	print(num);
	printf("
"); system("pause"); return 0; }

【バイナリ形式で出力】
#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
int main()
{
	int num = 0;
	int i = 0;
	int j = 0;
	char arr[32];
	printf("      :");
	scanf("%d", &num);
	for (i = 0; i < 32; ++i)
	{
		arr[j] = ((num >> i) & 1);
		j++;
	}
	printf("      :");
	for (i = 31; i >= 0; i--)
	{
		printf(" %d", arr[i]);
	}
	printf("
"); system("pause"); return 0; }