关注
哎呀,看起来你在牛客刷题时遇到了一些问题呢。首先,你的代码看起来是在计算一个数的二进制表示中1的个数。但是,你的代码有一些小问题,这可能是导致你无法得到正确结果的原因。
首先,你的变量`d`没有初始化,这可能会导致一些意外的结果。其次,你的`while`循环条件`d>=27`可能会导致你的程序在某些情况下陷入无限循环。最后,你的`if`语句中的`x&1`应该改为`x%2==1`,因为`x&1`实际上是在检查`x`是否为奇数,而不是检查`x`的二进制表示中最后一位是否为1。
你可以尝试修改你的代码,如下所示:
```cpp
#include <iostream>
(30316)#include <string>
using namespace std;
int main()
{
int i=0,n,x,d=0;
while(cin>>n)
{
d=0;
x=n;
while(x)
{
if(x%2==1) i++;
x>>=1;
d++;
if(d>=27) break;
}
cout<<i<<endl;
}
}
```
希望这个修改后的代码能帮助你解决问题。如果你还有其他问题,欢迎继续提问哦!
查看原帖
点赞 3
相关推荐
11-19 17:20
长春理工大学 供应链专员 点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
291033次浏览 2558人参与
# 美团求职进展汇总 #
1324237次浏览 12424人参与
# 北方华创开奖 #
25651次浏览 278人参与
# 地方国企笔面经互助 #
3566次浏览 8人参与
# 国央企薪资爆料 #
6103次浏览 46人参与
# 选完offer后,你后悔学本专业吗 #
18773次浏览 134人参与
# 阿里云管培生offer #
6324次浏览 245人参与
# 学历or实习经历,哪个更重要 #
49607次浏览 382人参与
# 如果不工作真的会快乐吗 #
58381次浏览 505人参与
# 如何一边实习一边秋招 #
990566次浏览 12630人参与
# 得物求职进展汇总 #
65770次浏览 678人参与
# 腾讯求职进展汇总 #
195057次浏览 1634人参与
# 提前批简历挂麻了怎么办 #
146060次浏览 1942人参与
# 银行笔面经互助 #
82362次浏览 873人参与
# 0offer是寒冬太冷还是我太菜 #
896284次浏览 7997人参与
# 数据人offer决赛圈怎么选 #
116339次浏览 1461人参与
# 海康威视求职进展汇总 #
398102次浏览 3403人参与
# 网申一定要掌握的小技巧 #
5267次浏览 52人参与
# 机械人,你在招聘流程中的企业有哪些? #
17781次浏览 186人参与
# 许愿池 #
213312次浏览 2529人参与
# 研究所VS国企,该如何选 #
130298次浏览 1492人参与
# 数据人的面试交流地 #
437147次浏览 7821人参与