//十進制轉化為二進制,利用棧先進後出原理
#include <cstdio>
#include <stack>
using namespace std;
int main()
{
int n;
stack<int> s;
while (scanf("%d",&n)!=EOF)
{
while (!s.empty()) s.pop();//一個一個清空棧頂元素
//十進制轉化為二進制,利用棧先進後出原理
#include <cstdio>
#include <stack>
using namespace std;
int main()
{
int n;
stack<int> s;
while (scanf("%d",&n)!=EOF)
{
while (!s.empty()) s.pop();//一個一個清空棧頂元素
//ClearStack(&s); 為什麼這裡不能用直接清空??用法錯誤???
while(n>0)
{
s.push(n%2);
n/=2;
}
while (!s.empty())
{
printf("%d",s.top());//一個一個輸出棧頂元素,後進先出
s.pop();//一個一個清空棧頂元素
}
puts("");//利用getchat();吸收作用 ,puts輸出作用
return 0;
}
while(n>0)
{
s.push(n%2);
n/=2;
}
while (!s.empty())
{
printf("%d",s.top());//一個一個輸出棧頂元素,後進先出
s.pop();//一個一個清空棧頂元素
}
puts("");//利用getchat();吸收作用 ,puts輸出作用
return 0;
}