二进制位运算中,有个很实用的函数叫lowbit,低位数值。定义lowbit(n)表示n的二进制表示中最低位的1代表是十进制的几。例如十进制数6对应2进制110其中最低位的1代表2;十进制数8对应2进制1000其中最低位的1代表8.
请实现lowbit函数的运算:输入十进制正整数n,输出lowbit(n)的返回值。
请问怎么这段问题的代码
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- qfl_sdu 2021-07-29 20:07关注
代码如下,如有帮助,请采纳一下谢谢
#include <iostream> #include <process.h> using namespace std; int lowbit(int n) { if(n % 2 == 1) return 1; else { n = n >> 1; return 2*lowbit(n); } } int main() { cout << " 1 :" << lowbit(1) << endl; cout << " 2 :" << lowbit(2) << endl; cout << " 6 :" << lowbit(6) << endl; cout << " 8 :" << lowbit(8) << endl; cout << " 10 :" << lowbit(10) << endl; cout << " 12 :" << lowbit(12) << endl; system("pause"); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 hexo+github部署博客
- ¥15 求螺旋焊缝的图像处理
- ¥15 blast算法(相关搜索:数据库)
- ¥15 请问有人会紧聚焦相关的matlab知识嘛?
- ¥15 网络通信安全解决方案
- ¥50 yalmip+Gurobi
- ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
- ¥15 itunes恢复数据最后一步发生错误
- ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
- ¥100 H5网页如何调用微信扫一扫功能?