字符串的逆序输出
字符串的逆序输出思路
1.需要创建一个函数来实现逆序输出的功能。
函数传参的是数组名,数组名表示的是数组首元素的地址
//字符串逆序输出函数
String_reverse_order(arr);
函数的形参是用一个指针来接收地址。
void String_reverse_order(char* str)
2.在函数内部找出该数组的左下标和右下标进行交换。
函数的左下标是等于数组首元素的地址
char* left=str;
右下标等于字符串的长度减去1。
//首元素的地址加上strlen(str)-1个长度的地址等于的是右下标的地址
char* right=str+strlen(str)-1;
3.接下来就到了实现交换功能的部分代码。
定义第三变量来交换左下标和右下标
交换完成右下标进行减1
左下标进行加1
char temp=*left;
*left=*right;
*right=tmep;
right++;
left--;
完整代码如下
void String_reverse_order(char* str)
{
char* left = str;//左下标
char* right = str + strlen(str) - 1;//右下标
while (left < right)
{
char tmp = *right;//进行交换
*right = *left;
*left = tmp;
*left++;
*right--;
}
}
int main()
{
char arr[] = "I LOVE CHINA";
//字符串逆序函数
String_reverse_order(arr);
printf("%s",arr);
return 0;
}
希望这篇文章可以帮助到你。