1:输出一个整数的每一位。
输出一个整数的每一位是对其操作数从低位到高位输出。
#include
#include
int main()
{
int data = 0;
int arr[10];//定义一个整形数组;
int count = 0;
printf("please enter data:");
scanf("%d",&data);
while (data)//这个数字为真;
{
arr[count++] = data % 10;//十进制从低位到高位输出;
printf("%d\n", arr[count - 1]);
data /= 10;//缩小10倍,整体向右移一位;
}
system("pause");
return 0;
}
%作为运算符是用来取摸的,也就是取余。
2.获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
#include
#include
int main()
{
int data = 0;
printf("please enter data:");
scanf("%d", &data);
int a[32];//整形有32个比特位;
int i = 0;
for (; i < 32; i++)
{
a[i] = data % 2;//求比特位;
data /= 2;
}
printf("输出偶数序列:\n");
i = 31;//偶数的最高位;
for (; i >= 0; i -= 2)
{
printf("%d",a[i]);
}
printf("\n");
printf("输出奇数序列:\n");
i = 30;//奇数的最高位;
for (; i >= 0; i -= 2)
{
printf("%d", a[i]);
}
printf("\n");
system("pause");
return 0;
}二进制一般是对位进行计算的,输出数的每一位是指操作数运算。还记得那个面试题求一个二进制数输出1的个数吗?还有其他的方法。