报错cannot convert 'int*' to 'const char*'

问题遇到的现象和发生背景

一个数字反转题,不知道哪出了错误。

img

用代码块功能插入代码,请勿粘贴截图
#include 
#include 
int newdata[22];
void zheng(char* data)
{
    int k;
    k=strlen(data)-1;
    while(data[k]=='0'&&k!=0)
    {
        k--;
    }
    for(int i=k;i>=0;i--)
    printf("%c",data[i]);
}
void bai(char* data)
{
    int k;
    k=strlen(data)-2;
    while(data[k]=='0'&&k!=0)
    {
        k--;
    }
    for(int i=k;i>=0;i--)
    printf("%c",data[i]);
    printf("%%");
}
void chu(char* data ,int c)
{
    int a=c-1,b=c+1,k=0;
    while(data[a]=='0'&&a!=0)
    a--;
    while(data[b]=='0'&&b!=strlen(data)-1)
    b++;
    for(int i=a;i>=0;i--)
    {
        newdata[k++]=data[i];
        newdata[k++]='/';
    }
    for(int i=strlen(data)-1;i>=b;i--)
    {
        newdata[k++]=data[i];
    }
    for(int i = 0; i < strlen(newdata); i ++)
    printf("%c",newdata[i]);
}
void dian(char* data ,int c)
{
    int a=c-1,b=c+1,k=0;
    while(data[a]=='0'&&a!=0)
    a--;
    while(data[b]=='0'&&b!=strlen(data)-1)
    b++;
    for(int i=a;i>=0;i--)
    {
        newdata[k++]=data[i];
        newdata[k++]='.';
    }
    for(int i=strlen(data)-1;i>=b;i--)
    {
        newdata[k++]=data[i];
    }
    for(int i=0;i<strlen(newdata);i++)
    printf("%c",newdata[i]);
}
int main ()
{
    char data[22];
    gets(data);
    if(data[strlen(data)-1=='%'])
    bai(data);
    for(int i=0;i<strlen(data);i++)
    {
        if(data[i]=='/')
        chu(data,i);
        if(data[i]=='.')
        dian(data,i);
        else
        zheng(data);
    }
    return 0;
}

数字类型和字符串类型不能相加,转化为相同格式再做加操作