Word Reversal (简单字符串处理)
2018-02-07 22:00
387 查看
题目描述:
For each list of words, output a line with each word reversed without changing the order of the words.
This problem contains multiple test cases!
The first line of a multiple input is an integer N, then a
blank line followed by N input blocks. Each input block is in the format
indicated in the problem description. There is a blank line between
input blocks.
The output format consists of N output blocks. There is a blank line between output blocks.
Input
You will be given a number of test cases. The first line
contains a positive integer indicating the number of cases to follow.
Each case is given on a line containing a list of words separated by one
space, and each word contains only uppercase and lowercase letters.
Output
For each test case, print the output on one line.
Sample Input
1
3
I am happy today
To be or not to be
I want to win the practice contest
Sample Output
I ma yppah yadot
oT eb ro ton ot eb
I tnaw ot niw eht ecitcarp tsetnoc
For each list of words, output a line with each word reversed without changing the order of the words.
This problem contains multiple test cases!
The first line of a multiple input is an integer N, then a
blank line followed by N input blocks. Each input block is in the format
indicated in the problem description. There is a blank line between
input blocks.
The output format consists of N output blocks. There is a blank line between output blocks.
Input
You will be given a number of test cases. The first line
contains a positive integer indicating the number of cases to follow.
Each case is given on a line containing a list of words separated by one
space, and each word contains only uppercase and lowercase letters.
Output
For each test case, print the output on one line.
Sample Input
1
3
I am happy today
To be or not to be
I want to win the practice contest
Sample Output
I ma yppah yadot
oT eb ro ton ot eb
I tnaw ot niw eht ecitcarp tsetnoc
1 //题意描述:输入一个字符串,不改变单词的顺序,将每个单词反转输出 2 //解题思路: 用gets读入,去头去尾后,判断出一个单词,将其复制到另一个字符串中逆序输出,直至字符串尾即可 3 #include<stdio.h> 4 #include<ctype.h> 5 #include<string.h> 6 7 void pri(char p[]) 8 { 9 int i,l=strlen(p); 10 for(i=0;i<l;i++) 11 printf("#%c",p[i]); 12 printf("\n"); 13 } 14 15 int main() 16 { 17 int T,r,i,j,k; 18 char s[5001],*p=NULL,s2[101]; 19 scanf("%d",&T); 20 while(T--) 21 { 22 23 scanf("%d",&r); 24 getchar(); 25 while(r--) 26 { 27 gets(s); 28 int l=strlen(s); 29 s[l]='\0'; 30 //pri(s); 31 32 p=s; 33 while(!isalpha(*p)) 34 { 35 p++; 36 } 37 //pri(p); 38 39 l=strlen(p); 40 for(i=l-1;i>=0;i--) 41 if(isalpha(p[i])) 42 break; 43 p[i+1]=' '; 44 p[i+2]='\0'; 45 //pri(p); 46 47 l=strlen(p); 48 for(i=0;i<l;) 49 { 50 j=0; 51 while(isalpha(p[i])) 52 { 53 s2[j++]=p[i++]; 54 } 55 s2[j]='\0'; 56 57 for(k=j-1;k>=0;k--) 58 printf("%c",s2[k]); 59 60 if(i==l-1) 61 printf("\n"); 62 else 63 printf(" "); 64 i++; 65 } 66 } 67 if(T != 0) 68 printf("\n"); 69 } 70 return 0; 71 } 72 //易错分析 73 //gets之前要吃掉换行
相关文章推荐
- zoj1151 I - Word Reversal 【简单字符串处理】【第三周练习】【the first day】
- zoj1151 zoj1295 Word Reversal 字符串的简单处理
- zoj1151 zoj1295 Word Reversal 字符串的简单处理
- ZOJ 1151 Word Reversal反转单词 (string字符串处理)
- ZOJ 1151 Word Reversal反转单词 (string字符串处理)
- Word Reversal 【字符串处理】
- SDUSTOJ - 1063 提取缩略词( 简单的字符串处理 )
- n a^o7 ! (简单的字符串处理)
- 模板拼装最简单处理 字符串拼接版本
- n a^o7 ! (简单字符串处理)
- HDU-1228-A + B(简单字符串处理)
- Python实现简单文本字符串处理的方法
- 从服务器中返回的时间字符串(或时间戳)的一些简单处理
- HDOJ/HDU 2567 寻梦(字符串简单处理)
- poj1035 简单的字符串处理
- 俺写的一个简单的字符串处理函数(可能会有用)
- Course(简单的字符串处理问题)
- HDU 1088 处理每个字符串比直接用getchar处理简单
- 【ACM-Steps1.2】简单字符串处理、简单数学题、进制转换系列8题(一)
- hihocoder#1477 : 闰秒 java简单处理字符串