Đây là code C đếm số lần xuất hiện các kí tự trong xâu có phân biệt chữ hoa chữ thường do em viết nhưng em không biết sao các bộ test có chữ b ở đầu(ví dụ: bbbbb aaaa; bbbbb; bbb c...) trả về kết quả bị mất chữ b trong khi các bộ khác em thử đều được. Các anh chỉ dạy em với ạ. Em cảm ơn ạ.
#include <stdio.h>
#include<stdbool.h>
bool xuathien(const char x,const char*dc){
int j=0;
while(dc[j]!='\0'){
if(x==dc[j]||(int) x==32){
return 1;
}
j++;
};
return 0;
}
int main(){
int i=0,index=0;
char arr[1000];
char dc[1000];
int solan[1000];
gets(arr);
while(arr[i]!='\0'){//tim trong mang arr
if( xuathien(arr[i],dc)==0 ){//neu arr[i] chua xuat hien
int dem=0;//lam moi dem
int k=0;//lam moi k
dc[index]=arr[i];
dc[index+1]='\0';//cat duoi
while(arr[k]!='\0'){//tim trong mang arr de doi chieu
if(arr[i]==arr[k]){
dem++;
}
k++;
}
solan[index]=dem;
index++;
}
i++;
}
for(i=0;i<index;i++){
printf("%c : ",dc[i]);
printf("%d\n",solan[i]);
}
return 0;
}
.
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?