单词缩写

来源:互联网 发布:疯狂的美工助手要钱吗 编辑:程序博客网 时间:2024/04/27 16:43

Problem Description

我们经常用一串短的字母代替一些长的单词。如ACM是Association for Computing Machinery的缩写。现在你用取首字母的办法得到一串单词的缩写。取首字母的办法是指把每个单词的首字母取出来用大写字母表示,然后把这些大写字母拼起来。但是也有些情况是例外的:一些情况在产生缩写是会被忽略,这些特殊情况见下面的规则:
1.常用的单词:and,for,the.
2.单词长度少于3的单词,如:a,of,to.
你现在的任务就是把给你的字符串用取首字母的办法得到它们的缩写。

Input

第一行是一个正整数T,表示测试用例数。每组测试用例包含一个长度小于100的字符串。这些单词只包含字母表中的字母。单词之间有一个空格。每行字符串的首尾没有空格。

Output

输出每组测试用例字符串的缩写。

Sample Input

5Association for Computing MachineryInstitute of Electrical and Electronics EngineersSUN YAT SEN UNIVERSITYThe Lord of the Ringsnetease

Sample Output

ACMIEEESYSULR

N

#include<stdio.h>#include <ctype.h>#include<string.h>int main(){  int t,len1=0,len2=0,i,j;  char a[200];  char c[105];  while(scanf("%d",&t)!=EOF)   {          getchar();      while(t--)      {              i=0;             gets(a);        len1=strlen(a);        while(i<len1)        {            j=0;           while(a[i]==' ')i++;           while(a[i]!=' ') { c[j]=a[i]; i++; j++; }            c[j]='\0';  len2=strlen(c);            if(!(len2<3||strcasecmp("AND",c)==0||strcasecmp("FOR",c)==0||strcasecmp("THE",c)==0))             putchar(toupper(c[0]));         }                               printf("\n");       }       } return 0;}


0 0
原创粉丝点击