1.字符串逆序
#include<stdio.h>
#include<string.h>
int main()
{
char arr[] = "abcdef";
int left = 0;
int right = strlen(arr) - 1;
while (left < right)
{
char tmp = arr[left];
arr[left] = arr[right];
arr[right] = tmp;
left++;
right--;
}
printf("%s\n", arr);
return 0;
}
1.2.使用递归的方式进行字符串逆序
#include<stdio.h>
#include<string.h>
void nixu(char* str)
{
char tmp = *str;
int len = strlen(str);
*str = *(str + len - 1);
*(str + len - 1) = '\0';
if (strlen(str + 1) >= 2)
nixu(str + 1);
*(str + len - 1) = tmp;
}
int main()
{
char arr[] = "abcdef";
nixu(arr);
printf("%s\n", arr);
return 0;
}
#include<stdio.h>
#include<string.h>
void nixu(char arr[], int left, int right)
{
char tmp = arr[left];
arr[left] = arr[right];
arr[right] = tmp;
if(left<right)
nixu(arr, left+1, right-1);
}
int main()
{
char arr[] = "abcdef";
int left = 0;
int right =