系统相关
首页 > 系统相关> > Ubuntu Linux C 编程----用递归实现倒序打印

Ubuntu Linux C 编程----用递归实现倒序打印

作者:互联网

在main函数中,入栈的顺序是’a’、‘b’、‘c’,而出栈打印的顺序却是’c’、‘b’、‘a’,最后入栈的’c’最早出来,因此堆栈这种数据结构的特点可以概括为LIFO(Last In First Out,后进先出)。我们也可以写一个递归函数来倒序打印,这是利用函数调用的栈帧实现后进先出的:
在这里插入图片描述

也许你会说,又是堆栈又是递归的,倒序打印一个数组犯得着这么大动干戈吗?写一个简单的循环不就行了:
#include <stdio.h>
#define LEN 3

char buf[LEN]={‘a’, ‘b’, ‘c’};

void print_backward(int pos)
{
if(pos == LEN)
return;
print_backward(pos+1);
putchar(buf[pos]);
}

int main(void)
{
print_backward(0);
putchar(’\n’);

 return 0;

}

标签:backward,打印,pos,LEN,----,Ubuntu,print,倒序
来源: https://blog.csdn.net/m0_38127487/article/details/113823554