C //练习 4-12 运用printd函数的设计思想编写一个递归版本的itoa函数,即通过递归调用把整数转换为字符串。

C程序设计语言 (第二版) 练习 4-12

练习 4-12 运用printd函数的设计思想编写一个递归版本的itoa函数,即通过递归调用把整数转换为字符串。

注意:代码在win32控制台运行,在不同的IDE环境下,有部分可能需要变更。
IDE工具:Visual Studio 2010
代码块:
c 复制代码
#include <stdio.h>
#include <stdlib.h>

void itoa(int n, char s[]){
	static int i = 0;
	
	if(n < 0){
		s[i++] = '-';
		n = -n;
	}
	if(n / 10){
		itoa(n / 10, s);
	}
	s[i++] = n % 10 + '0';
	s[i] = '\0';
}

int main(){
	int n = -2356;
	char s[60];
	itoa(n, s);
	printf("%s\n", s);

	system("pause");
	return 0;
}
相关推荐
怕浪猫1 小时前
RAG 面试 6 连问,从原理到优化全部覆盖
python·算法·面试
yyy(十一月限定版)1 小时前
224redfg
c语言
无线通信科研笔记1 小时前
IEEE TVT 2026 论文精读与完整复现|相位误差如何重塑近场 RIS 的幅相响应
论文阅读·人工智能·python·算法·论文笔记
2601_962885722 小时前
如何用 Python 自动识别股票的支撑位与压力位?
开发语言·python
mmmmath_32 小时前
二叉树の递归遍历
算法
爱吃奥利奥_wen3 小时前
面向对象三板斧:封装、继承、多态,到底在“装“什么、“承“什么、“变“什么?
开发语言·经验分享·c#
All for pursuit.3 小时前
【位运算-1】338.比特位计数
数据结构·c++·算法·leetcode
我可能是个假开发3 小时前
FTP Unicode 文件名导致 `550` 的问题分析与解决方案
java·开发语言·spring
小师兄吃牛肉3 小时前
C语言中的nullptr有必要吗
c语言·c++·算法
WL学习笔记4 小时前
日期类(C++)
开发语言·c++·日期类实现