python输入一个英文句子、翻转句子中单词的顺序_翻转句子中单词的顺序 C语言...

这篇博客介绍如何使用Python和C语言来翻转一个英文句子中的单词顺序,保持单词内部字符顺序不变。通过示例代码展示了如何处理输入的句子,如"I am a student"将转化为"student a am I"。文章包含逆转字符串的函数实现以及逆转句子的完整过程。
摘要由CSDN通过智能技术生成

输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。

为简单起见,标点符号和普通字母一样处理。

比如将“I am a student”转化为"student a am I"。

#include

#include

//逆转字符串

char* Reverse(char *str, int len)

{

if(str == NULL || len <= 0)

return str;

char *pLast = str + len - 1;

char *pBegin = str;

while(pBegin < pLast)

{

char temp = *pBegin;

*pBegin = *pLast;

*pLast = temp;

++ pBegin;

-- pLast;

}

return str;

}

//逆转句子

char * ReverseSentence(char *str)

{

if(str == NULL)

{

return str;

}

//逆转整个句子

Reverse(str, strlen(str));

//逆转各个单词

char *pBegin = str;

char *pEnd = str;

while(*pEnd != '\0')

{

while(*pEnd != '\0' && *pEnd != ' ')

++pEnd;

//逆转单词

Reverse(pBegin, pEnd - pBegin);

if(*pEnd == '\0')

{

break;

}

++pEnd;

pBegin = pEnd;

}

return str;

}

int main()

{

char str1[] = "";

char str2[] = "a";

char str3[] = "abc";

char str4[] = "I am a student";

if(strcmp(ReverseSentence(str1), "") == 0

|| strcmp(ReverseSentence(str2), "a") == 0

|| strcmp(ReverseSentence(str3), "abc") == 0

|| strcmp(ReverseSentence(str4), "student a am I") == 0

)

{

printf("reverse sentence ok\n");

}

return 0;

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值