编写一个算法,将非负的十进制整数转换为其他进制的数输出,10及其以上的数字从‘A’开始的字母表示。
要求:
1) 采用顺序栈实现算法;
2)从键盘输入一个十进制的数,输出相应的八进制数和十六进制数。

#include "stdio.h"
#define StackSize 100
typedef char ElemType;
typedef struct
{ElemType data[StackSize];int top;
}SqStack;
int trans(int d, int b, char string[])
{SqStack st;char ch;int r, i = 0;st.top = -1;if (b <= 1 || b > 36 || b == 10){printf(" b is Error\n");return 0;}while (d!=0){r = d%b;ch = r + (r < 10 ? '0' : 'A' - 10);st.top++;st.data[st.top] = ch;d /= b;}while (st.top != -1){string[i++] = st.data[st.top];st.top--;}string[i] = '\0';return 1;
}
void main()
{char str[10];int d, b, t;printf("输入一个整数:");scanf_s("%d", &d);printf("转换为8进制后的数:\n");t = trans(d, 8, str);if (t == 0) printf("Error!");else printf("%s\n", str);printf("转换为16进制后的数:\n");t = trans(d, 16, str);if (t == 0) printf("Error!");else printf("%s\n", str);
}

欢迎访问我的博客https://www.ndmiao.cn/

编写一个算法,将非负的十进制整数转换为其他进制的数输出,10及其以上的数字从‘A’开始的字母表示。相关推荐

  1. 非负的十进制整数N转换为一个二进制

    题目 非负的十进制整数N转换为一个二进制 /****************************************************************************** ...

  2. 输入一个十进制数据,转换为8进制,使用顺序栈实现.

    #include <stdio.h> #include <stdlib.h> #include <stdbool.h> //顺序栈管理结构体: typedef st ...

  3. java 二进制输入_把从键盘输入的一个二进制数赋给变量A 然后如何转换为其他进制...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 public class DigitConvert { public static void main(String args[]){ int iOct= ...

  4. 【第13天】给定一个十进制数字 B ,请你把它转换为R进制打印 | 进制转换

    本文已收录于专栏 <Java入门一百例> 学习指引 序.专栏前言 序.本章前言 一.[例题1] 2.解题思路 3.模板代码 1.方法1 2.方法2 4.代码解析 二.推荐专栏 三.课后习题 ...

  5. 顺序栈实现十进制转成R进制

    2016年7月31日13:53:37利用顺序栈实现十进制整数转换转换成r进制1.算法思想将十进制数N转换为r进制的数,其转换方法利用辗转相除法,以N=3456,r=8为例转换方法如下:N N / 8 ...

  6. 七进制转十进制java_java基础——Java进制转换

    Java中在声明数字时默认采用的是十进制,可以在数字前加上符号表示数字采用八进制[前面加0(零)]或者十六进制[前面加上0x(零x)]. Java的整型封装类Integer和Long提供toStrin ...

  7. Java中十进制转换为其他进制的方法

    package com.hehe.domain;public class NumberDemo {public static void main(String[] args) {//十进制20转换为二 ...

  8. 用栈实现将十进制数转换为任意进制数(2,8,16...).

    解题思路:假如N为输入的数,n为要转换为的进制,若要将十进制231转换为8进制数,过程如下; N                        N/n                      N%n ...

  9. 进制转换之十进制转换为D进制——整数部分除基取余法

    将十进制x转换为D进制的y: [方法]:整数采用"除基取余法",小数采用"乘基取整法" [推导]:以三位D进制为例,假设y的各位是a1a2a3 y = a 1 ...

最新文章

  1. (未完)httpd进程数查询,prefork模式修改apache最大连接数
  2. centos安装ssdb
  3. 06.系统编程-2.线程
  4. 出现画面抖动_解析液晶拼接大屏在使用中出现的常见问题及解决方案
  5. 点击显示隐藏盒子函数
  6. 【转】用fo-dicom实现print scu的注意事项!!!!!!!!!
  7. resnet50网络结构_AAAI2020 | 利用网络结构关系加速NAS+Layer
  8. 安卓 多条通知_安卓11第一版发布:原生滚动截屏、屏幕录像、抄国内ROM这么多...
  9. TTU智能配电终端_智能配电终端规模化建设及应用
  10. shell之旅--将目录下的文件重命名为md5码+后缀名
  11. c语言立方体的体积和表面积,立方体表面积C语言
  12. js 计算时间差 函数
  13. 模型的泛化能力--正则化
  14. 初学Spring Cloud踩得坑之Caused by: org.springframework.context.ApplicationContextException
  15. 用代码实现windows10下的虚拟桌面创建功能
  16. 上研究生学计算机去河大学校好不好,河南大学研究生,河南大学研究生值得读吗?...
  17. 专访哈佛公共卫生学院院长胡里奥·弗兰克
  18. EMW3080+STC15轻松实现设备上云4(阿里云物联网平台、智能生活开放平台)
  19. F5系统配置备份及恢复
  20. Node:找不到模块Error: Cannot find module

热门文章

  1. 四轴无人机那些事 番外篇 2 加速度计
  2. Ch支持java不,ch.hsr.geohash包使用
  3. Java问题定位技术手册
  4. dubbo的常用容错机制
  5. PHP导入(百万级)Excel表格数据
  6. 北京科技大学计算机保研去向,北京科技大学2020年保研率是多少
  7. Arduino使用u8g2库函数驱动4线/6线OLED屏幕(I2C/SPI通讯)附带库函数详解
  8. python参考书推荐--父与子的编程之旅
  9. MySQL通过命令导入导出数据
  10. android 功能模块之通讯模块四