字符及子串的逆转
Posted ranran1203
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符及子串的逆转相关的知识,希望对你有一定的参考价值。
输入 i come from tianjin. 输出 tianjin. from come i
int main()
{
int i = 0, j = 0, flag = 0, begin, end;
char str[] = "i come from tianjin.";
char temp;
j = strlen(str) - 1;
printf("%s\n", str);
while (j > i)//逆序整个子串
{
temp = str[i];
str[i] = str[j];
str[j] = temp;
j--;
i++;
}
printf("%s\n", str);
i = 0;
while (str[i])
{
if (str[i] != ‘ ‘)
{
begin = i;
while (str[i] && str[i] != ‘ ‘)
{
i++;
}
i = i - 1;//这的处理很重要
end = i;
}
cout << begin << " "<<end<<endl;
while (end > begin)//逆序单词
{
temp = str[end];
str[end] = str[begin];
str[begin] = temp;
begin++;
end--;
}
i+=1;//i在递增
}
printf("%s\n", str);
cin.get();
return 0;
}
以上是关于字符及子串的逆转的主要内容,如果未能解决你的问题,请参考以下文章