2012百度之星E题
来源:互联网 发布:刘德华唱功知乎 编辑:程序博客网 时间:2024/06/07 01:34
#include"stdio.h"#include"string.h"#include"ctype.h"int main(){ int i,j,fla1=1,fla2=1; char a[141]; gets(a); int n=strlen(a); if(!islower(a[0])) { printf("Error!\n"); return 0; } for(i=0;i<n;i++) { if(islower(a[i]))continue; if(a[i]=='_'&&i+1<n&&islower(a[i+1])) {fla1=0;i++;continue;} if(isupper(a[i])) {fla2=0;continue;} fla1=0;fla2=0; break; } if(fla1==0&&fla2==0) { printf("Error!\n"); return 0; } if(fla1) for(i=0;i<n;i++) if(isupper(a[i])) {
for(j=n+1;j>i+1;j--) a[j]=a[j-1]; a[j]=tolower(a[i]); a[i]='_'; n++; } if(fla2) for(i=0;i<n;i++) if(a[i]=='_'&&islower(a[i+1])) { n--; a[i]=toupper(a[i+1]); for(j=i+1;j<=n;j++) a[j]=a[j+1]; } puts(a);
return 0;}