题目:(c primer plus第六版第九章)为了让程序清单9.8中的to_binary()函数更通用,编写一个to_base_n() 函数接受两个在2~10范围内的参数,然后以第2个参数中指定的进制打印第 1个参数的数值。例如,to_base_n(129, 8)显示的结果为201,也就是129的 八进制数。在一个完整的程序中测试该函数。

分析:该题与第九章介绍的用递归来求一个数的二进制关系有密切关系,考察我们是否掌握利用递归来解决相关问题,只要深入理解递归思想,将二进制体略微改动就可解答

清单9.8(二进制)

#include<stdio.h>
int main()
{void to_binary(unsigned long);unsigned long number;printf("Enter a interger(q to quit)\n");while(scanf("%lu",&number)==1)//注意unsigned long的缩写写法,以及while和scanf的组合{printf("Binary equivalent:");to_binary(number);putchar('\n');printf("Enter a interger(q to quit)\n");}return 0;
}
void to_binary(unsigned long n)//递归函数
{int t;t=n%2;if(n>=2)to_binary(n/2);putchar(t==0?'0':'1');//选择输出rreturn ;
}

该题(任意进制转换)答案:

#include<stdio.h>
void to_base_n(int,int);
int main()
{int a,n;printf("please to  number and n:");while(scanf("%d %d",&a,&n)==2){to_base_n(a,n);printf("\nyou can enter a number and n again(q to end):");}return 0;
}
void to_base_n(int x,int n)
{int r;r=x%n;if(x>=n)to_base_n(x/n,n);printf("%d",r);}

2021.11.20关于用递归来解决进制转换相关推荐

  1. python 进制转换_Python数据结构与算法——递归应用之进制转换

    高考加油 在前面的文章中堆栈也用于进制转换(存放余数).而递归也可以用于进制转换,有固定模式循环,并且可以规模越来越小的问题都可以转换成递归 栈与递归之间一定有点联系 整数转换成任意进制 日常运算都是 ...

  2. 2021微软暑期实习机试,负进制转换,十进制转-2进制

    2021微软暑期机试题,进制转换 一 前言 二 解题步骤 2.1 题目描述 2.1.1 简述前两题 2.1.2 2.2解题思路 2.3代码思路 三 问题和启发 3.1 遇到的一些问题 3.2 考虑-3 ...

  3. python 进制转换 递归_python--使用递归优雅实现列表相加和进制转换

    咦,好像坚持了一段时间,感觉又有新收获啦. # coding: utf-8 class Stack: def __init__(self): self.items = [] # 是否为空 def is ...

  4. 1.1_简单递归 (汉诺塔问题 / 进制转换)

    --- 递归三定律 ---1. 基本结束条件,解决最小规模问题2. 缩小规模,向基本结束条件演进3. 调用自身来解决已缩小规模的相同问题 递归实例:汉诺塔问题 n 个盘子时:1. 把 n-1 个圆盘从 ...

  5. 【不忘初心】Win10_LTSC2021_19044.1381_X64_可更新[纯净精简版][2.52G](2021.11.20)

    此版可正常更新补丁,母版来自UUP WIN10_LTSC2021 19044.1288集成补丁到19044.1381为了保证稳定初心的系统全部都是离线精简和优化,非二次封装.系统纯净.流畅.进程少无任 ...

  6. 尚硅谷——谷粒商城项目开发记录——2021.11.20

    尚硅谷--谷粒商城项目开发记录--2021.11.20 概念: 1.SpringCloud Alibaba: 简介: Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案.此 ...

  7. 利用栈和递归实现进制转换——数据结构实验报告

    一.实验名称:栈的应用--进制转换 二.实验目的 熟练掌握栈的两种存储方式的具体实现过程,并分别使用递归和非递归两种方式,实现进制转换. 三.实验要求 顺序栈和链栈两种存储方式任选一种,实现从十进制到 ...

  8. 第20期《进制转换》

    进制转换是人们利用符号来计数的方法.进制转换由一组数码符号和两个基本因素"基数"与"位权"构成.基数是指,进位计数制中所采用的数码(数制中用来表示"量 ...

  9. 【愚公系列】2021年12月 网络工程-进制转换

    文章目录 一.进制 1.二进制 2.八进制 3.十进制 4.十六进制 二.进制转换 `1.二进制转八进制` `2.二进制转十进制` `3.二进制转十六进制` `4.八进制转二进制` `5.八进制转十进 ...

最新文章

  1. etcd、flannel的安装---单节点
  2. 彻底弄懂 HTTP 缓存机制及原理 | 干货
  3. idea中Error:java: Compilation failed: internal java compiler error
  4. 那些相似的CRM之间究竟有无区别
  5. PyTorch 1.0 中文文档:torch.Tensor
  6. 网页素材精品:一组五彩缤纷的免费矢量背景素材
  7. 植物大战僵尸外挂源码【C语言制作】
  8. 计算机主机名与用户名区别
  9. Python量化交易平台:QMT (日内交易策略示例)
  10. 港澳台、大陆身份证正则表达式
  11. 图像分割——Multi-Scale and Pyramid Network Based Models( PSPN)理解和代码分析
  12. Django 表单验证之自定义表单验证器
  13. 笔记之Python网络数据采集
  14. IC封装原理及功能特性汇总
  15. Linux服务器远程管理软件选择XShell还是PuTTY
  16. C++项目实战(一)——简单商品销售系统实现
  17. 【渝粤题库】陕西师范大学165110 培训管理 作业(高起专)
  18. 在线英语词典翻译系统
  19. 八年级计算机教案下册,人教版信息技术八年级下册全册教案.doc
  20. 数据分析师,未来的出路在哪里?

热门文章

  1. 项目经理必备工具包:项目管理中的22个思维导图
  2. CCF系列题解--2016年4月第四题 方格游戏
  3. shell命令执行顺序控制(、||、()、{}用法)
  4. C语言之Problem 2291 排序
  5. java监听短信_Android上监听收到的短信(SMS)
  6. inaflash什么意思中文_adobe flash是什么意思
  7. 【Designing ML Systems】第 5 章 :特征工程
  8. 学前儿童加法算术小程序,改进版
  9. 785nm 600mW 稳波长窄线宽光纤输出半导体激光器模块 YM600NU-785-105FC-PC产品资料
  10. 改了包名字就 找不到或无法加载主类 com.xxx.xxx