任务是颠倒句子中单词的顺序我能够颠倒单词的顺序,但问题是单词中字母的顺序也会改变
例如:猫和狗
我的计划中的奇迹:战术DNA神
所需输出:狗和猫
如何修复代码以使其正常工作?
这是我代码:
void revSent(char str[]) {
int i;
int n = strlen(str);
char letter;
for (i = 0; i < n / 2; i++) {
letter = str[i];
str[i] = str[strlen(str) - i - 1];
str[strlen(str) - i - 1]=letter ;
}
}
2条答案
按热度按时间isr3a4wc1#
你可以用空格分隔句子,然后你可以对结果数组进行反向排序。
k97glaaz2#
通常的方法是反转整个字符串,然后分别反转字符串中的每个单词。
要提取字符串中的单词,可以使用标准字符串函数
strspn
和strcspn
。这是一个演示程序
程序输出为