c语言问题 这个九连环递归怎么变为非递归,原码如下,实在不会了

void up(int n);//上环算法
void down(int n);//下环算法

int upCnt;//上环次数
int downCnt;//下环次数

int main() {

int n;//几连环

printf("请输入环数:");
scanf_s("%d", &n);
//上环过程演示
upCnt = downCnt = 0;//初始化为0
printf("-----上环过程如下-----\n");
up(n);
printf("上环总次数:%d, 下环总次数:%d, 上下总次数:%d\n", upCnt, downCnt, upCnt + downCnt);
printf("\n");

//下环过程演示
upCnt = downCnt = 0;//重新设置为0
printf("-----下环过程如下-----\n");
down(n);
printf("上环总次数:%d, 下环总次数:%d, 上下总次数:%d\n", upCnt, downCnt, upCnt + downCnt);
return 0;

}