数字反转0如何去点?

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

数字反转,例如:输入563600
输出6365。
但是我的0没有删掉,不知道为什么

img

用代码块功能插入代码,请勿粘贴截图
#include 
#include 
void zheng(char* data)
{
    int k;
    char newData[22];
    k=strlen(data)-1;
    while(data[k]==0&&k!=0)
    {
        k--;
    }
    for(int i=k;i>=0;i--)
    printf("%c",data[i]);
}
int main ()
{
    char data[22];
    gets(data);
    zheng(data);
    return 0;
}

因为你这个是字符串 所以是 '0' 而 '0' 的值应该是 48
改成这样就好了
如果有用请采纳哦!

#include <stdio.h>
#include <string.h>
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]);
}
int main () {
    char data[22];
    gets(data);
    zheng(data);
    return 0;
}
#include <stdio.h>
void zheng(int n){
    int m = 0;
    while (n){
        m = 10 * m + n % 10;
        n /= 10;
    }
    printf("%d",m);
}
int main(){
    int n;
    scanf("%d", &n);
    zheng(n);
    return 0;
}