HDU 2564 词组缩写
参考自:https://www.cnblogs.com/ECJTUACM-873284962/p/6391802.html
词组缩写
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 14487 Accepted Submission(s): 4705
Problem Description
定义:一个词组中每个单词的首字母的大写组合称为该词组的缩写。
比如,C语言里常用的EOF就是end of file的缩写。
比如,C语言里常用的EOF就是end of file的缩写。
Input
输入的第一行是一个整数T,表示一共有T组测试数据;
接下来有T行,每组测试数据占一行,每行有一个词组,每个词组由一个或多个单词组成;每组的单词个数不超过10个,每个单词有一个或多个大写或小写字母组成;
单词长度不超过10,由一个或多个空格分隔这些单词。
接下来有T行,每组测试数据占一行,每行有一个词组,每个词组由一个或多个单词组成;每组的单词个数不超过10个,每个单词有一个或多个大写或小写字母组成;
单词长度不超过10,由一个或多个空格分隔这些单词。
Output
请为每组测试数据输出规定的缩写,每组输出占一行。
Sample Input
1end of file
Sample Output
EOF
解法:
1 #include <stdio.h> 2 int main(){ 3 int i,T; 4 char s[100]; 5 while(scanf("%d",&T)){ 6 getchar(); 7 while(T--){ 8 gets(s); 9 if(s[0]>='a'&&s[0]<='z') 10 printf("%c",s[0]-32); 11 else if(s[0]>='A'&&s[0]<='Z') 12 printf("%c",s[0]); 13 for(i=1;s[i]!='\0';i++){ 14 if(s[i]==' '&&(s[i+1]>='a'&&s[i+1]<='z')) 15 printf("%c",s[i+1]-32); 16 else if(s[i]==' '&&(s[i+1]>='A'&&s[i+1]<='Z')) 17 printf("%c",s[i+1]); 18 } 19 printf("\n"); 20 } 21 } 22 return 0; 23 }