#include <stdio.h>
#include <assert.h>
void reverse(char* left, char* right)
{
assert(left);
assert(right);
while (left < right)
{
char tmp = *left;
*left = *right;
*right = tmp;
left++;
right--;
}
}
int main()
{
char arr[101] = { 0 };
gets(arr);
int len = strlen(arr) - 1;
//逆置整个字符串
reverse(arr, arr+len);//传送首地址和末尾地址
//逆置单词
char* start = arr;
while (*start)
{
char* end = start;
while (*end != ' ' && *end != '\0')
{
end++;
}
reverse(start, end - 1);
if (*end != '\0')
end++;
start = end;
}
printf("%s", arr);
return 0;
}
依次输出倒置之后的字符串,以空格分割。实例输入:i like beijing.输出:beijing . like i
最新推荐文章于 2024-09-30 07:31:33 发布