C语言,谁能帮我注释一下这个C语言程序

这是一个关于把整数转换为字符数组的程序
#include <stdio.h>
int main()
{
int input = 0;
char str[105];
char inorder[105];
int index = 0;
while(scanf("%d", &input)){
index = 0;
while(input > 0){
int tmp = 0;
tmp = input % 10;
str[index] = (char)(tmp+48);
index ++;
input /= 10;
}
for(int i=0;i<index;i++){
inorder[i] = str[index-i-1];
}
printf("%s\n", inorder);
}
return 0;
}

#include <stdio.h>
int main()
{
    int input = 0;//输入的数字
    char str[105];//输入的数字进入的字符串
    char inorder[105];//输出的字符串
    int index = 0;//字符串指针(如果你懂就是栈指针)
    while(scanf("%d", &input)){//每次读取一串数字
        index = 0;//栈指针清零
        while(input > 0){//判断是否为有效数字
            int tmp = 0;//每次清空代入的数字
            tmp = input % 10;//每次取最后一位数字放入字符串
            str[index] = (char)(tmp+48);//放入字符串
            index ++;//栈指针指向字符串后一位
            input /= 10;//本数除以10即舍去最后一位放入字符串的数
        }
        for(int i=0;i<index;i++){
            inorder[i] = str[index-i-1];//正序放入输出的字符串
        }
        printf("%s\n", inorder);//输出字符串,后每次换行
    }
    return 0;//结束程序
}
/* 本程序就是将你输入的数字以字符串的形式输出,并换行形成一条列数串*/

温馨提示:答案为网友推荐,仅供参考
相似回答