cleverman


私信TA

用户名:20111031

访问量:864

签 名:

让智慧发光

等  级
排  名 419
经  验 4988
参赛次数 8
文章发表 5
年  龄 11
在职情况 学生
学  校 东风小学
专  业

  自我简介:

我是一名五年级的小学生,请多多指教!

解题思路:

注意事项:

参考代码:

#include<iostream>

#include<vector>

#include<cmath>

using namespace std;

vector<int> arr;

int a;

int pos = 0;//化为二进制

void BinaryChange(int n) {

   for (int i = 31; i >= 0; i--) {//枚举n的每一位

       arr.push_back(((n >> i) & 1));//n右移i位,并与1做与运算

   }

}

int main()

{

   cin >> a;

   BinaryChange(a);

   int x = 0, j = 0;

   for (int i = 31 - 4; i >= 31 - 7; i--) {//获取倒数第4-7位二进制数

       if (arr[i] == 1) {

           x += pow(2, j);

       }

       j++;

   }

   cout << x << endl;

   return 0;

}


 

0.0分

1 人评分

  评论区

  • «
  • »