输入“1234”为什么这个题的结果是54562而不是1234

#include <stdio.h>
#include <stdlib.h>
int f(char *s)
{
    int nk = 0;
    while(*s)
    {
        nk = nk*10+*s++;
    }
    return nk;
}
int main()
{
    char a[5];
    char*s = a;
    scanf("%s",a);
    printf("%d",f(s));
    return 0;
}

#include <stdio.h>
#include <stdlib.h>
int f(char *s)
{
    int nk = 0;
    while(*s)
    {
        nk = nk*10+(*s++ - '0');
    }
    return nk;
}
int main()
{
    char a[5];
    char*s = a;
    scanf("%s",a);
    printf("%d",f(s));
    return 0;
}

问题解决,请点下采纳