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;
}
相关推荐
橘颂TA5 小时前
【Linux】从 “抢资源” 到 “优雅控场”:Linux 互斥锁的原理与 C++ RAII 封装实战(Ⅰ)
linux·运维·服务器·c++·算法
菩提祖师_5 小时前
量子机器学习在时间序列预测中的应用
开发语言·javascript·爬虫·flutter
刘97535 小时前
【第22天】22c#今日小结
开发语言·c#
明天好,会的5 小时前
分形生成实验(三):Rust强类型驱动的后端分步实现与编译时契约
开发语言·人工智能·后端·rust
YanDDDeat5 小时前
【JVM】类初始化和加载
java·开发语言·jvm·后端
YGGP5 小时前
【Golang】LeetCode 19. 删除链表的倒数第 N 个节点
算法·leetcode·链表
枫叶丹45 小时前
【Qt开发】Qt系统(三)->事件过滤器
java·c语言·开发语言·数据库·c++·qt
wjs20245 小时前
CSS Position(定位)
开发语言
亓才孓5 小时前
继承父类和接口,又冲突的变量名怎么解决
java·开发语言
池塘的蜗牛5 小时前
mmse-based-OFDM-signal-processing(2)
算法