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);
}
相关推荐
2301_80025611几秒前
【人工智能引论期末复习】第4章 机器学习1-基础知识
人工智能·算法·机器学习
seeksky2 分钟前
分词与 BPE 实现(tiktoken)
算法
lly2024063 分钟前
NumPy 迭代数组
开发语言
rgeshfgreh3 分钟前
Python闭包:函数记住状态的秘密
开发语言·python
hhcccchh3 分钟前
学习vue第十一天 Vue3组件化开发指南:搭积木的艺术
前端·vue.js·学习
week_泽3 分钟前
第9课:LangMem SDK高效实现长期记忆管理 - 学习笔记_9
人工智能·笔记·学习·ai agent
super杨某人4 分钟前
算法十日谈:双指针
数据结构·算法
古城小栈6 分钟前
Cargo命令工具
开发语言·rust
kklovecode6 分钟前
C语言数组:零长数组,可变数组,多维数组
java·c语言·算法
0***m8228 分钟前
MATLAB高效算法实战技术文章大纲向量化运算替代循环结构
开发语言·算法·matlab