按单词逆序句子(含标点)
生活随笔
收集整理的這篇文章主要介紹了
按单词逆序句子(含标点)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
主要思想:先寫出單詞逆序的函數,再寫整個句子逆序的函數(在其中查找單詞,找到后調用單詞逆序的函數逆序,最后將整個句子逆序)。
程序缺點:只能識別幾個常用的標點符號 源代碼及測試程序: //給定一個字符串,按單詞將該字符串逆序,含標點 #include<stdio.h> //start 和 end 之間逆序的函數 void reverse_word(char *start, char *end) { while(start < end) { *start = *start ^ *end; *end = *start ^ *end; *start = *start++ ^ *end--; } } char *reverse_sentence(char *str) { char *start = str; char *end = str; while(*end != '\0') { if(*end==' ' || *end=='!' || *end==',' || *end=='.' || *end=='?')//查到一個單詞 { if(start < end)//只有一個字母的單詞不逆序 reverse_word(start, end-1); while(*end==' ' || *end=='!' || *end==',' || *end=='.' || *end=='?') end++; //指向下一個單詞首字符 start = end; } else end++; } reverse_word(str, end-1);//整個句子逆序 return str; } int main(int argc, char *argv[]) { char str[] = "Hello, I am glad to see you!"; printf("%s\n", str); printf("%s\n", reverse_sentence(str)); return 0; }
轉載于:https://www.cnblogs.com/starainDou/p/4716167.html
總結
以上是生活随笔為你收集整理的按单词逆序句子(含标点)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 泰拉瑞亚虫洞药水怎么用 汉典泰字的基本解
- 下一篇: SAP MIGO的界面中Document