当前位置: 首页 > article >正文

SWUST OJ 961: 进制转换问题

题目描述

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

输入

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

输出

转换后的二进制数。

样例输入

10

样例输出

1010

参考程序

#include<iostream>
using namespace std;
#define maxsize 100

void concersion(int n){
	int a[maxsize];
	int top =0;  //栈为空
	
	while(n){
		a[top++]=n%2; //入栈 ;先用后加 
		n=n/2;
	} 
	while(top){
		cout<<a[--top]; //先减后用 
	}
}
int main(){
	int n;
	cin>>n;
	concersion(n);
	return 0;
} 
#include<stdio.h>
#include<stdlib.h>

#define Maxsize 50
typedef struct stack
{
	int data[Maxsize];
	int top;
}Stack;

void Init(Stack *&S)
{
	S=(Stack *)malloc(sizeof(Stack));
	S->top=-1;
}

bool Push(Stack *&S, int elem)
{
	if(S->top==Maxsize-1)	return false;
	S->top++;
	S->data[S->top] = elem;
	return true;
}

bool Pop(Stack *&S, int &elem)
{
	if(S->top ==-1)	return false;
	elem=S->data[S->top];
	S->top--;
	return true;
}

int main()
{
	int n;
	scanf("%d", &n);
	Stack *S;
	Init(S);
	while(n!=0)
	{
		int elem;
		elem =n%2;
		Push(S, elem);
		n/=2;
	}
	while(S->top !=-1)
	{
		int elem;
		Pop(S, elem);
		printf("%d", elem);
	}
	return 0;
}

#include<stdio.h>
#include<stdlib.h>
#define maxsize 100
typedef struct sqstack
{
	int data[maxsize];
	int top;
}sqtack;
void Initstack(sqstack *&s)
{
	s=(sqstack *)malloc(sizeof(sqstack));
	s->top=-1;
}
int push(sqstack *&s,int e)
{
    if(s->top==maxsize-1)
	return 0;
	else
	s->top++;
	s->data[s->top]=e;
	return 1;	
}
int pop(sqstack *s,int &e)
{
	if(s->top==-1)
	return 0;
	else
	e=s->data[s->top];
	s->top--;
	return 1;
}
int main()
{
	int n,e;
	sqstack *s;
	Initstack(s);
	scanf("%d",&n);
	while(n)
	{
		push(s,n%2);
		n=n/2;
	}
	while(1)
	{
		int m=pop(s,e);
		if(!m)
		{
			break;
		}
		printf("%d",e);
	}
	return 0;	
}

 程序仅供学习参考!


http://www.kler.cn/a/273093.html

相关文章:

  • 九、Go语言快速入门之map
  • C++中的继承——第二篇
  • 响应式网页设计案例
  • LeetCode //C - 447. Number of Boomerangs
  • ICPC区域赛成都站【赛后回顾+总结】
  • Android亮屏Job的功耗优化方案
  • 网络管理基础
  • 系统学习Python——装饰器:“私有“和“公有“属性案例-[隐式运行的运算符重载方法无法在Python3.X下委托]
  • 基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的夜间车辆检测系统(深度学习代码+UI界面+训练数据集)
  • 【Redis内存数据库】NoSQL的特点和应用场景
  • 智慧公厕对于智慧城市管理的意义
  • unity3d Animal Controller的Animal组件中General基础部分理解
  • JS原型和原型链的理解
  • 面试经典-基于开放地址手写hashmap
  • Elasticsearch使用Kibana进行基础操作
  • 基于springboot创建mybatis
  • 深度剖析:数字经济下人工智能水平的新测算模型数据集
  • 如何确保面试流程标准化操作,避免人为因素影响**
  • phpcms头像上传漏洞引发的故事
  • 字节跳动后端工程师实习生笔试题-c++
  • JavaWeb后端——分层解耦 IOC DI
  • GateWay路由规则
  • 阿里云-云服务器ECS新手如何建网站?
  • 每日五道java面试题之mybatis篇(一)
  • LeetCode 2882.删去重复的行
  • ubuntu安装docker的详细教程