现在的位置: 首页 > 综合 > 正文

C++与Java

2014年09月04日 ⁄ 综合 ⁄ 共 508字 ⁄ 字号 评论关闭

这个题的trick很多,不符合题意的情况很多,费了大半天才把情况全部弄全。仔细一点,多找几个样例,这题好说。

#include <stdio.h>
#include <string.h>
int main()
{
    char z[101];
    while (scanf("%s",&z)!=EOF)
    {
        int flag=1,y=0,o;
        o=strlen(z);
        if (z[o-1]=='_')
        {
            printf("Error");
        }
        else
        {
            char s[101]={0};
            for (int t=0;t<strlen(z);t++)
                if ((z[t]<'a'||z[t]>'z')&&z[t]!='_'||z[0]=='_'||(z[t]=='_'&&z[t+1]=='_'))
                {
                    flag=0;
                    printf("Error");
                    break;
                }
            for (int r=0;r<strlen(z);r++)
            {
                if (z[r]=='_')
                {
                    s[y++]=z[r+1]-32;
                    r++;
                }
                else s[y++]=z[r];
            }
            if (flag)
            {
                for (int c=0;c<strlen(s);c++) printf("%c",s[c]);
            }
        }
        printf("\n");
    }
    return 0;
}

抱歉!评论已关闭.