1161转进制(C语言)

一:题目

二:思路分析

1.首先该题目让我们使用递归求十进制转其他进制

2.其次,我们要知道十进制转换为其他进制怎么转换,以例题所给的数据为例

由此图可以看出,十进制转换为其他进制,是辗转相除法,即这个数一直除以要转换的进制数,一直到商为零,然后逆序输出所有余数

3.用递归图表示为

4.分析到这里大致的代码已经有雏形了,还有一个问题是,在余数在1~9时,直接输出就可以,但是余数是10~15时,不可以直接输出,要转换为A~F,怎么转换呢?

三:代码

复制代码
#include <stdio.h>
//1161转进制
void  Func(int x, int m)
{
	if (x == 0)
		return;
	else
	{
		Func(x / m,m);
		if (x % m < 10)
			printf("%d", x % m);
		else
			printf("%c", (char)(x % m + 55));
	}

}
int main()
{
	int x = 0, m = 0;
	scanf("%d %d", &x, &m);
	Func(x, m);
}
相关推荐
我是你的开心果7783 小时前
ai全栈软件开发day21(第四阶段喽)
人工智能·学习
Felven3 小时前
A. Eating Game
算法
网络工程小王3 小时前
【LLM开发实验】FastAPI 学习笔记
数据库·笔记·学习·mysql·fastapi
wuminyu3 小时前
Linux内核线程调度与虚拟线程调度机制系统级深度剖析
java·linux·c语言·jvm·c++
血小板要健康4 小时前
队列 + 宽搜(BFS):二叉树层序遍历 算法总结
java·数据结构·笔记·算法·leetcode·宽度优先
Felven4 小时前
A. Riptide
算法·c 算法
醉舞经阁半卷书14 小时前
量化交易基础之python库学习
学习
雪芽蓝域zzs4 小时前
第十六节:递归组件实现无限层级折叠侧边栏菜单
开发语言·javascript·ecmascript
m0_739312874 小时前
四元数、李群SO(3)/李代数so(3)的作用及应用场景
算法·机器人·自动驾驶
youm20034 小时前
【学习笔记】认识NoSQL——非关系型数据库
笔记·学习·nosql