c++,帮我分析一下每段代码的意思,谢谢

来源:百度知道 编辑:UC知道 时间:2024/06/05 13:45:05
# include<iostream.h>
void main() {
char a[]="abcdabcabdaeff";
int b[5]={0},i=0;
while(a[i]) {
switch(a[i++]) {
case 'a': b[0]++;break;
case 'b': b[1]++;break;
case 'c': b[2]++;break;
case 'd': b[3]++;break;
default:b[4]++;
}
}
for(i=0;i<5;i++) cout<<b[i]<<"";
cout<<endl;
}

# include<iostream.h>
void main() {
char a[]="abcdabcabdaeff"; //待数的字符串
int b[5]={0},i=0; //变量的初始化
while(a[i]) { //当a[0]不为空,进循环体
switch(a[i++]) { //判断当前元素的字符是a,b,c,d,e,f中的那个字符
case 'a': b[0]++;break; //a的话b数组的第一个元素+1,跳出
case 'b': b[1]++;break;
case 'c': b[2]++;break;
case 'd': b[3]++;break;
default:b[4]++; //这个地方写得有点别扭,把等于e和f的字符数量加在一起了
}
}
for(i=0;i<5;i++) cout<<b[i]<<"";
cout<<endl;
}

最后的结果应该是:4 3 2 2 3 0

分别统计a这个char数组中'a','b','c','d'这个几个字符的个数还有其他字符的个数