做复杂了 可以直接用数组或者容器从后到前遍历输出 可我用的是栈。。。。。

二进制数

http://www.nowcoder.com/questionTerminal/103dd589fed14457a673c613d8de3841

include

include

include

using namespace std;
stack<int>st;
int main(){
int a;
int b[100];
while(cin>>a){//循环输入
int i=0;
while(a!=0){//做模2除法
b[i]=a%2;
a=a/2;
i++;
}
for(int j=0;j<i;++j)//用栈做逆序输出
st.push(b[j]);
int x=0;
while(!st.empty()){
b[x]=st.top();
st.pop();
x++;
}
for(int j=0;j<i;j++)
cout<<b[j];
cout<<endl;
}
return 0;
}</int>

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-21 17:16
科大讯飞 算法工程师 28.0k*14.0, 百分之三十是绩效,惯例只发0.9
点赞 评论 收藏
分享
10-15 03:05
门头沟学院 Java
CADILLAC_:凯文:我的邮箱是死了吗?
点赞 评论 收藏
分享
2 收藏 评论
分享
牛客网
牛客企业服务