- #include <stdio.h>
- /*
-
- 刚看了运算符这里,记得
-
- 1、可以用一个数m跟1进行按位与运算,即: m&1 ,从而来获得这个数的末位数
-
- 2、右移运算符 >> 可以移动指定数位
-
- 3、可以配上for循环实现依次右移
-
- 因此:
-
- */
- int main(int argc, const char * argv[]) {
-
- // 定义变量并提示用户输入
-
- int num;
-
- printf("请输入一个数:\n");
-
- // 接收用户输入的数
-
- scanf("%d",&num);
-
- // 开始使用按位与 & ,右移位运算符 >> 实现10进制转2进制
-
- for (int i = 0; i < 32; i++) {
-
- // 定义临时变量(貌似相当于空杯子)
-
- int temp = 0;
-
- // 先进行右移(此处的31-i可以通过画图得知)
-
- temp = num >> (31-i);
-
- // 右移位后跟1进行按位与运算,定义一个变量用于接收每次一位后的结果
-
- int n = temp & 1;
-
- // 打印运算后结果
-
- printf("%d",n);
-
- }
-
- printf("\n");
-
- return 0;
- }
- //效果还行,希望对你有帮助
复制代码 |