/**将一句话的单词进行倒置,标点符号不倒换。 *比如:“I am a boy.”,输出“boy. a am I”。 */ #include<stdio.h> #include<string.h> #include<stdlib.h> #define SIZE 100 void func(char* input) { int i; char temp; int begin,end; int n=strlen(input); //第一次进行倒序输出 for(i=0;i<n/2;i++) { temp=input[i]; input[i]=input[n-i-1]; input[n-i-1]=temp; } printf("Reverse string is:%s\n",input); i=0; while(input[i]!='\0') { //单词内部调整顺序 if(input[i]!=' ') { begin=i; while(input[i]!=' ' && input[i]!='\0') i++; i=i-1; end=i; while(begin<end) { temp=input[begin]; input[begin]=input[end]; input[end]=temp; end--; begin++; } } i++;//继续循环 } } int main(void) { char input[SIZE]; printf("Please enter a string:"); gets(input); func(input); printf("The result string is:%s\n",input); system("pause");//如果不加这一句的话,运行exe文件的时候只会一闪而过!!! return 0; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。