这段代码的功能是统计输入字符串中连续数字字符的出现次数,并输出每个数字及其出现次数。但代码有一个关键问题:它只处理字符串开头的连续数字,遇到第一个非数字字符就会停止。 - 你的while循环条件 `(s[i]-'0')>=0 && (s[i]-'0')<=9` 会在遇到第一个非数字字符时立即退出,导致字符串中后面的数字被忽略。例如输入 "a123b456",只会统计 "123" 而忽略 "456"。 - 考虑如何遍历整个字符串直到结尾,而不是遇到非数字就停止。你可以用 `s[i] != '\0'` 作为循环条件,然后在循环内部判断当前字符是否为数字。