解题思路:
录入,分段,比较
注意事项:
不要去关注最后的几句话,完全误导人,我用getchar()结合EOF做得出来,但是提交总是报错,蓝桥杯官网和C语言网都一样。
参考代码:#include
#include
intmain(){
charf[26][5]={"*-","-***","-*-*","-**","*","**-*","--*","****","**","*---","-*-","*-**",
"--","-*","---","*--*","--*-","*-*","***","-","**-","***-","*--","-**-","-*--","--**"};
charb[1000],c[6];//b输入时录入的*和-,c用来保存每一个单独的密码
inti=0,j=0,k=0;
gets(b);
while(1){
if(b[i]=='|'||b[i]=='\0'){
c[j]='\0';
j=0;
for(k=0;k<26;k++){
if(strcmp(c,f[k])==0){
printf("%c",'a'+k);
break;
}
}
}else{
c[j++]=b[i];
}
if(b[i]=='\0')break;
i++;
}
return0;
}