#include<stdio.h>
#include<string.h>
const int MAXN=200;
char str[MAXN];
bool isvowel(char c)
{
    if(c==‘a‘||c==‘e‘||c==‘i‘||c==‘u‘||c==‘o‘) return true;
    else return false;
}    
bool judge1(int n)  //至少要有一个元音字母 
{
    for(int i=0;i<n;i++)
    {
        if(isvowel(str[i])) 
          return true;
    }    
    return false;
}    
bool judge2(int n)
{
    for(int i=2;i<n;i++)
    {
        if(isvowel(str[i-2])&&isvowel(str[i-1])&&isvowel(str[i])) return false;
        if(!isvowel(str[i-2])&&!isvowel(str[i-1])&&!isvowel(str[i])) return false;
    }    
    return true;
}    
bool judge3(int n)
{
    for(int i=1;i<n;i++)
    {
        if(str[i]==str[i-1]&&str[i]!=‘e‘&&str[i]!=‘o‘) return false;
    }    
    return true;
}    
int main()
{
    int len;
    while(scanf("%s",&str)!=EOF)
    {
        if(strcmp(str,"end")==0) break;
        len=strlen(str);
        if(judge1(len)==false)
        {
            printf("<%s> is not acceptable.\n",str);
            continue;
        }    
        if(judge2(len)==false)
        {
            printf("<%s> is not acceptable.\n",str);
            continue;
        }    
        if(judge3(len)==false)
        {
            printf("<%s> is not acceptable.\n",str);
            continue;
        }    
        printf("<%s> is acceptable.\n",str);
    }    
    return 0;
}
原文:http://www.cnblogs.com/wangkun1993/p/6286414.html