当前位置: 代码迷 >> 综合 >> (五)C++进制转换问题
  详细解决方案

(五)C++进制转换问题

热度:61   发布时间:2023-10-19 20:41:36.0

                                            进制转换问题

建立顺序栈或链栈,编写程序实现十进制数到二进制数的转换。

输入

输入只有一行,就是十进制整数。

输出

转换后的二进制数。

样例输入

10

样例输出

1010
// 11进制转换问题.cpp: 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <iostream>
#define MAX_SIZE 1000
using namespace std;
class Stack {public:Stack();~Stack();int push(int data);int pop();private:int data[MAX_SIZE];int len;
};
Stack::Stack() {len = -1;
}
int Stack::push(int data) {len++;if (len < MAX_SIZE) {this->data[len] = data;return true;}else {return false;}
}
int Stack::pop() {if (len >= 0) {return data[len--];}else {return -1;}
}
Stack::~Stack() {;
}
int main()
{Stack *s = new Stack;int data;int i = 0;int yu,get;cin >> data;while (data) {yu = data % 2;data = data / 2;s->push(yu);}while (1) {get = s->pop();if (get<0) {break;}else {cout << get;}}return 0;
}

 

  相关解决方案