代码如下:
#include<iostream>
#include<cstring>
#define zm a[i]>='A'&&a[i]<='Z'||a[i]>='a'&&a[i]<='z'
using namespace std;
char a[105],l,p;
void cmp_1(){
for(int i=0; i<l; i++)
if(zm)
cout<<".";
else cout<<a[i];
return;
}
void cmp_2(){
int c=0;
for(int i=0; i<l; i++)
if(zm)
c++;
float t1=c,t2;
int ans;
t2=t1/3;
ans=t1/3;
if(t2-ans>=0.5)
ans++;
p=ans;
for(int i=0; i<l; i++){
if(zm&&ans){
cout<<a[i];
ans--;
}
else if(zm)
cout<<".";
else cout<<a[i];
}
return;
}
void cmp_3(){
int ans=p;
int c=0;
for(int i=0; i<l; i++)
if(zm)
c++;
/*for(int i=0; i<l; i++){
if(zm&&ans){
cout<<a[i];
ans--;
}
else if(zm){
p=i;
break;
}
else cout<<a[i];
}*/
int flag=0;
for(int i=p; i<l; i++)
if(a[i]=='A'||a[i]=='E'||a[i]=='I'||a[i]=='O'||a[i]=='U'
||a[i]=='a'||a[i]=='e'||a[i]=='i'||a[i]=='o'||a[i]=='u'){
flag=1;
break;
}
if(flag==0){
float t1=c,t2;
int ans;
t2=t1/3*2;
ans=t1/3*2;
if(t2-ans>=0.5)
ans++;
//ans-=p+1;
//cout<<ans;
for(int i=0; i<l; i++){
if(zm&&ans){
cout<<a[i];
ans--;
}
else if(zm)
cout<<".";
else cout<<a[i];
}
}
else {
for(int i=0; i<l; i++){
if(zm&&ans){
cout<<a[i];
ans--;
}
else if(zm){
p=i;
break;
}
else cout<<a[i];
}
for(int i=p; i<l; i++)
if(a[i]=='A'||a[i]=='E'||a[i]=='I'||a[i]=='O'||a[i]=='U'
||a[i]=='a'||a[i]=='e'||a[i]=='i'||a[i]=='o'||a[i]=='u'){
cout<<a[i];
//break;
}
else if(zm)
cout<<".";
else cout<<a[i];
}
return;
}
int main()
{
cin.getline(a,105);
l=strlen(a);
cmp_1();
cout<<endl;
cmp_2();
cout<<endl;
cmp_3();
return 0;
}