hj36 字符串加密
这道题的话,基本思路以及本地测试都对,但是线上就是会有几个数据过不了,线下再测也是正确的,我想应该逻辑部分没有什么问题,是循环输入字符串的时候,他的缓冲区的问题,但是这个我暂时没有明确的解决办法
另外就是字符串的输入和处理,这个的话我很多都只是掌握了基础的用法,没有去分析里面的原理,后面的话还是要去多看多用,多多了解关于字符串的使用以及输入输出部分的内容
#include<stdio.h>
int e,s,n,o,i;
int main(){
char str[1000];
while(fgets(str,1000,stdin)!=NULL){
e=0,s=0,n=0,o=0;
for(int i=0;str[i]!=0;i++){
if((str[i]>='A'&&str[i]<='Z')||(str[i]>='a'&&str[i]<='z')){
e++;
}else if(str[i]==' '){
s++;
}else if(str[i]>='0'&&str[i]<='9'){
n++;
}else{
o++;
}
}
printf("%d %d %d %d\n",e,s,n,o-1);
}
return 0;
}

京公网安备 11010502036488号