C语言 十进制转 二进制 八进制 十六进制

2023-05-16

整体源码:

#include<stdlib.h>
#include<stdio.h>
# define STACK_INIT_SIZE 100
# define STACKINCREMENT 10

typedef int SElemType;

typedef struct
{
	SElemType *base;
	SElemType *top;
	int stacksize;
 } sqstack;
 

void initstack(sqstack *s)
{
	s->base=(SElemType *)malloc(STACK_INIT_SIZE *sizeof(SElemType));
	if(!s->base)
	{
		printf("创建空间失败!\n");
		return;
	}
	s->top=s->base;
	s->stacksize=STACK_INIT_SIZE;
	return ;
}

void push(sqstack *s,SElemType e)
{
	if(s->top-s->base>=s->stacksize)
	{ 
		s->base=(SElemType *)realloc(s->base,(s->stacksize+STACKINCREMENT)*sizeof(SElemType));
	}
	if(!s->base)
	{
		printf("栈已满,扩充空间失败!\n");
		return ;
    }
    *s->top++=e;
    return;
 } 


void pop(sqstack *s,SElemType *e)
{
	if(s->top==s->base)
	{
		printf("栈已满\n");
		return;
	}
	*e=*--s->top;
	return ;
}

void conversion(int number,int m)
{
	sqstack S;
	SElemType e;
	initstack(&S);
	if(number==0) 
	{
		printf("转换后%d的进制:",m);
		return ; 
	}
	while(number)
	{
		push(&S,number%m);
		number=number/m;
	}
	
	printf("转换后%d的进制:",m); 
	while(S.base!=S.top)
	{
		pop(&S,&e);
		switch(e)
	  {
 		case 10:putchar('A');break;
  		case 11:putchar('B');break;
 		case 12:putchar('C');break;
  		case 13:putchar('D');break;
 		case 14:putchar('E');break;
  		case 15:putchar('F');break;
  		default :printf("%d",e);
  	  }
	
	}
}

int main()
{
	int number,m;
	printf("请输入要进行转换的数值:");
	scanf("%d",&number);
	printf("请输入要转换的数制:");
	scanf("%d",&m);
	conversion(number,m);
	return 0;
}

源码讲解:下期分解

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言 十进制转 二进制 八进制 十六进制 的相关文章

  • 一个人做饭简单食谱_通过这5条简单食谱学习SQL

    一个人做饭简单食谱 SQL Structured Query Language is a powerful and expressive language for dealing with data from relational data
  • 利用SARIMA模型对季节周期性的时序案例进行分析(一)

    看过掌柜前几篇关于时序文章 xff1a 利用ARIMA模型对时间序列进行分析的经典案例 xff08 详细代码 xff09 利用ARIMA模型对时间序列进行分析的经典案例 xff08 详细代码 xff09 一文中会遇到的问题总结ARIMA模型
  • 数据分析面试、笔试题汇总+解析(六)

    xff08 接上篇 xff09 面试题 xff08 MySQL篇 xff09 3 如何提高MySQL的查询速度 xff1f 考点解析 xff1a 考察面试者对MySQL查询优化的理解 参考答案 xff1a xff08 因为这个问题如果回答的
  • 力扣584.寻找用户推荐人 - 你应该知道的五种MySQL解法

    题目链接 xff1a 584 寻找用户推荐人 解题思路 此题思路其实很简单 xff1a 只需要在条件查询中筛选推荐人编号都不是2的用户就能返回正确答案 但是这里有一个坑大家要注意 xff1a customer表中referee id列是包含
  • 浅析“04.23王者荣耀KPL比赛因出现硬件异常导致比赛延期”这一事件

    背景 不知道朋友们有没有看昨天晚上八点多的王者荣耀KPL比赛 xff08 成都AG超玩会VS广州TTG xff09 这一场 xff0c 当时比赛进行到快15分钟的时候出现了红方请求暂停的情况 xff0c 后来比赛直播界面就一直提示如下 xf
  • 初识网络基础《网络七层模型详解》

    坚持原创输出 xff0c 点击蓝字关注我吧 图片来自网络 目录 一 初识网络基础二 网络七层模型详解 1 物理层2 数据链路层3 网络层4 传输层5 会话层6 表示层7 应用层三 总结 一 初识网络基础 其实网络刚刚开始发展的时候 xff0
  • winScp连接Ubuntu 连接不上问题解决

    今天把服务器重装了之后就一直连不上 显示 网络连接超时 xff0c 可以尝试以下几种方法 xff1a 1 把linux的防火墙关了 xff1a 查看防火墙的信息 xff1a service iptables status 开启防火墙 xff
  • ctf中pwn题目总结

    pwntools工具使用 1 安装 pip install pwntools xff08 python2 xff09 pip3 install pwntools xff08 python3 xff09 2 使用 Context设置 cont
  • python学习--for循环详解

    最近开始整理python的资料 xff0c 博主建立了一个qq群 xff0c 希望给大家提供一个交流的平台 78486745 一 使用for循环实现简单功能 span class token triple quoted string str
  • 字符串排序-C语言实例

    1 简单的字符串排序 给定有限个字符串 将其按照大小顺序排列 此时的大小顺序简单来说我们可以先认为是ASCLL码的大小顺序 由此我们只需要比较字符串的ASCLL码的大小即可 2 算法设计 1 输入10个字符串 2 任选一种排序算法对字符串排
  • C语言最全入门笔记

    c语言入门 C语言一经出现就以其功能丰富 表达能力强 灵活方便 应用面广等特点迅速在全世界普及和推广 C语言不但执行效率高而且可移植性好 xff0c 可以用来开发应用软件 驱动 操作系统等 C语言也是其它众多高级语言的鼻祖语言 xff0c
  • bios uefi 区别_UEFI vs BIOS:有何区别?

    bios uefi 区别 So you might have heard the acronyms BIOS and UEFI thrown around especially when trying to switch Operating
  • mysql查看使用的配置文件路径

    mysql怎么查看使用的配置文件路径 xff1f 结论 mysql help grep 39 my cnf 39 或 mysqld verbose help grep A 1 39 Default options 39 通过以上两个命令就可
  • 家庭宽带光猫改桥接模式教程-淇云博客

    目前大多数家庭宽带默认是在光猫直接拨号上网的 xff0c 如果你想要改为自己的路由器拨号比较麻烦 xff0c 需要光猫的超级管理员账号才可以进后台修改 xff0c 但是光猫的超级管理员账号会被运营商远程修改 xff0c 一般也不会告诉用户
  • WSL 下的Linux删除文件夹

    WSL 下的Linux删除文件夹 问题导出 最近在学习Tengine框架 xff0c 下载源码编译成功 xff0c 改了几行代码后准备重新编译一下 xff0c 于是便在文件系统里 xff0c 鼠标右键删除了build文件夹 xff0c 之后
  • CSDN博客代码高亮显示

    今天分享下在CSDN写博客的时候如何设置代码高亮 一 首先进入个人博客界面 xff1a 三 设置选择你的博客标题 描述和想要的皮肤并选择代码显示格式 三 进入管理界面后进入博客设置 那么走到这里 xff0c 你肯定已经开始迫不及待的去实验了
  • Python - 对象=属性+方法,实例化是从类变成实例对象的过程

    Python面向对象三大特征 xff1a 封装 继承 多态 类的封装 xff1a 封装之后 xff0c 可以直接调用类的对象 xff0c 来操作内部的一些类方法 xff0c 不需要让使用者看到代码工作的细节 类的继承 xff1a 类可以从其
  • Mysql使用SSL连接

    最近项目中用到了SSL连接 xff0c 记录一下 xff0c 环境为windows10 xff0c Mysql版本为5 6 查看是否支持 SSL 首先在 MySQL 上执行如下命令 查询是否 MySQL 支持 SSL mysql gt SH
  • mysql里查到所有的编码格式都是utf8时还是不能插入中文字符

    xff4d xff59 xff53 xff51 xff4c 里查到所有的编码格式都是 xff55 xff54 xff46 xff18 时还是不能插入中文字符 查得编码格式都是 xff55 xff54 xff46 xff18 xff1a 插入
  • 现学现卖,使用Debian创建Ngrok服务器,穿透层层内网,使用树莓派做web服务器,运行宝塔Linux面板。

    前言 因为准备创建俱乐部 xff0c 需要用到网站等内容 而创建俱乐部本身就是为了学习树莓派 编程等内容的 xff0c 所以计划使用树莓派做Web服务器 xff0c 不过因为设备在内网 xff0c 而且没有固定IP xff0c 需要用到内网

随机推荐