对字符串 displayStringReverse,逆序输出一个字符串的所有元素。
普通
#include <stdio.h>
int main()
{
char a[30];
gets(a);
int sum=0,j = 0;
while (a[j] != '\0')
{
j++;
sum++;
}
int left = 0;
int right = sum - 1;
for (int i = right; i >= left; i--)
{
printf("%c", a[i]);
}
return 0;
}
函数指针
#include <stdio.h>
#include <string.h>
void arr(char *a, int x, int y)
{
int i = 0;
while (y < x)
{
int temp = *(a + x);
*(a + x) = *(a + y);
*(a + y) = temp;
x--;
y++;
}
puts(a);
}
int main()
{
char a[30];
gets(a);
int ret = strlen(a);
int left = 0;
int right = ret - 1;
arr(&a, right, left);
return 0;
}
递归
void arr(char* p)//倒叙输出
{
if (*p == '\0')
{
return;
}
arr(p+1);//
printf("%c", *p);
}
#include <stdio.h>
int main()
{
char a[30];
gets(a);
arr(&a);
return 0;
}
仅供参考;