字符串压缩,但最后一个字母后多了一个1

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串会变为a2b1c5a3。

#include<stdio.h>
int main() {
    char a[10];
    int count = 1,i;

    scanf("%s", &a);
    for (i = 0; i < 10; i++) {
        if (a[i] == a[i+1]) {
            count++;
        }
        else {
            printf("%c%d", a[i], count);
            count = 1;
        }
    }
    return 0;
}


字符串长度不超过10吗