Set, reset and complement bit by macro

Write a program to set, reset and complement bit of an entered number using macro.

#include<stdio.h>
#define CLEAR_BIT_AT_POSITION(num,bit) num=num &~(1<<bit)
#define SET_BIT_AT_POSITION(num,bit) num=num | (1<<bit)
#define COMPLEMENT_BIT_AT_POSITION(num,bit) num=num ^ (1<<bit)
void Print_Num_inBinary(int);
int main()
{
	int num,bit;
	printf("Enter a Number = ");
	scanf("%d",&num);
	Print_Num_inBinary(num);
	printf("Enter a bit(Position) to check = ");
	scanf("%d",&bit);
	if(bit >=0 && bit <= (sizeof(int)*8-1))
	{
		//CLEAR_BIT_AT_POSITION(num,bit);
		//SET_BIT_AT_POSITION(num,bit);
		COMPLEMENT_BIT_AT_POSITION(num,bit);
	}
	else
	{
		printf("\nInvalid Bit Position\n");
	}
	Print_Num_inBinary(num);
	return 0;
}
void Print_Num_inBinary(int n)
{
	int i;
	printf("\n%d Bit Binary Representation of a Number\n",sizeof(int)*8);
	for(i = ((sizeof(int)*8)-1);i >= 0;i--)
	{
		printf("%d",n >> i & 1);
		if(!(i%8))
			printf(" ");
	}
	printf("\n\n");
}

Output

Enter a Number = 15
32 Bit Binary Representation of a Number
00000000 00000000 00000000 00001111
Enter a bit(Position) to check = 3
32 Bit Binary Representation of a Number
00000000 00000000 00000000 00000111
Enter a Number = 7
32 Bit Binary Representation of a Number
00000000 00000000 00000000 00000111
Enter a bit(Position) to check = 3
32 Bit Binary Representation of a Number
00000000 00000000 00000000 00001111