http://acm.hdu.edu.cn/showproblem.php?pid=1062
在遇到空格或结束之前所有单词连带标点符号一起倒序输出
View Code
1 #include<stdio.h> 2 #include<stdlib.h> 3 void print(char *s,int *i) 4 { 5 char ss[100000]; 6 int j=0; 7 while((*s)!=' '&&(*s)!='\0') 8 { 9 ss[j++]=*s; 10 s++; 11 (*i)++; 12 } 13 while(j--) 14 printf("%c",ss[j]);//遇到空格或结束前全部倒序输出 15 (*i)--; 16 } 17 int main() 18 { 19 int n,i; 20 char str[100000]; 21 scanf("%d",&n); 22 gets(str); 23 while(n--) 24 { 25 gets(str); 26 for(i=0;str[i]!='\0';i++) 27 if(str[i]==' ') 28 printf(" "); 29 else print(&str[i],&i); 30 printf("\n"); 31 } 32 return 0; 33 }