程序设计 -- 添上小括号

输入一个只包含字母和数字的字符串,请你在所有数字的两边添上一对小括号,多个连续数字视为一个整体,仅添加一对括号。
比如 abc1de23fg ,添上小括号后为 abc(1)de(23)fg
输入格式
一行,一个只包含字母和数字的字符串,不含空格。
输出格式
一行,添上小括号后的字符串
输入样例1
abc1de23fg
输出样例1
abc(1)de(23)fg
输入样例2
2021HappyNewYear2022
输出样例2
(2021)HappyNewYear(2022)

#include <stdio.h>
#include <ctype.h>

int main()
{
    char a[100];
    scanf("%s", a);
    const char *p = a;
    while (*p)
    {
        if (isdigit(*p))
        {
            printf("(");
            do
            {
                printf("%c", *p++);
            } while (isdigit(*p));
            printf(")");
        }
        else
        {
            printf("%c", *p);
            p++;
        }
    }
    return 0;
}