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);
}
相关推荐
元亓亓亓24 分钟前
LeetCode热题100--76. 最小覆盖子串--困难
算法·leetcode·职场和发展
CHANG_THE_WORLD25 分钟前
深入理解C语言指针:从源码到汇编的彻底剖析
c语言·开发语言·汇编
CHANG_THE_WORLD28 分钟前
C++数组地址传递与数据影响:深入理解指针与内存
算法
json{shen:"jing"}28 分钟前
力扣-单词拆分
数据结构·算法
星火开发设计29 分钟前
序列式容器:deque 双端队列的适用场景
java·开发语言·jvm·c++·知识
码农葫芦侠34 分钟前
Rust学习教程2:基本语法
开发语言·学习·rust
aaa78736 分钟前
Codeforces Round 1080 (Div. 3) 题解
数据结构·算法
LYS_06181 小时前
c++学习(1)(编译过程)
c++·学习
键盘鼓手苏苏1 小时前
Flutter for OpenHarmony 实战:Envied — 环境变量与私钥安全守护者
开发语言·安全·flutter·华为·rust·harmonyos
特种加菲猫1 小时前
C++核心语法入门:从命名空间到nullptr的全面解析
开发语言·c++