单链表
链表结点的定义如下:
struct Node
{
int data;
Node* next;
};
如果从尾到头输出链表,则
void PrintReversely(Node* pHead)
{
if (pHead)
{
if (pHead->next)
{
PrintReversely(pHead->next);
}
printf("%d",pHead->data);
}
}
如果从尾到头输出一个字符串,则
void ReversePrintStr(char str[])
{
if (*str != '/0')
{
if (*(str+1) != '/0')
{
ReversePrintStr(str+1);
}
printf("%c",*str);
}
}
如果定义一个函数求字符串的长度,要求该函数体内不能声明任何变量,则
int StrLen(char str[])
{
if(*str == '/0')
return 0;
return (StrLen(str+1) + 1);
}