题目让求一个字符串里面同一个单词出现的次数。我把每个单词都放到一个字符串数组里面,输出时发现了一堆不知道从哪里来的奇怪字符。
这里是你字符数组初始化的时候错误了,仅定义而未初始化,那么该初值也就是随机的,在后续输入时,前面的字符被你的gets输入覆盖,但100个空间的剩余单位没有被初始化,从而出现『奇奇怪怪』的字符。
想要验证的话可以将string打印一下看看,你就可以发现问题了。
for(i = 0; i < 100; i++){
printf("%c\n", string[i]);
}
解决方法是可以这样初始化
char str[100] = {};
char a[10] = {};
char b[20][10] = {{}};