7-195 缩写期刊名 (10分)
科研工作者经常要向不同的期刊投稿。但不同期刊的参考文献的格式往往各不相同。有些期刊要求参考文献所发表的期刊名必须采用缩写形式,否则直接拒稿。现对于给定的期刊名,要求按以下规则缩写: (1)长度不超过4的单词不必缩写; (2)长度超过4的单词仅取前4个字母,但其后要加“.”; (3)所有字母都小写。
输入格式:
首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。 每组测试输入一个包含大小写字母和空格的字符串(长度不超过85),单词由若干字母构成,单词之间以一个空格间隔。
输出格式:
对于每组测试,在一行上输出缩写后的结果,单词之间以一个空格间隔。
输入样例:
1
Ad Hoc Networks
输出样例:
ad hoc netw.
#include<bits/stdc++.h>
using namespace std;
int main() {
int t;
cin>>t;
getchar();
while (t--) {
string s;
getline(cin,s);
s+=' ';
int slen=s.size();
int p=0;
for(int i=0;i<slen;i++)if(s[i]>='A'&&s[i]<='Z')s[i]+='a'-'A';
for(int i=0;i<slen;i++){
if(s[i]==' '){
string g=s.substr(p,i-p);
if(g.size()>4){
cout<<g.substr(0,4)<<".";
if(i!=slen-1)cout<<" ";
}
else {
cout<<g<<" ";
}
p=i+1;
}
}
cout<<endl;
}
}