注册 登录
编程论坛 C语言论坛

大佬们帮帮忙,小弟刚入编程不会这个。123输出1 2 3

bccnzq 发布于 2020-12-05 11:48, 1402 次点击
# include <stdio.h>
void a(int n)
{
    int i;
    if((i=n/10)!=0)
    a(i);
    putchar(n%10+'0');
}
int main()
{
    long b;
    scanf("%d",&b);
    if(b<0)
{   printf("- ");
    b=-b;}
    a(b);
    if(b==0){     
    putchar('0');
    printf("\n");}
    if(b>0)
{   putchar (32);
}
    return 0;
}
5 回复
#2
apull2020-12-05 12:53
scanf("%ld",&b); //long型用%ld

if(b==0){ 到return前都可以不要
#3
bccnzq2020-12-05 15:58
回复 2楼 apull
没有实现数字间空格呀,123输出1 2 3 ,然而这个123输出123,-123输出-123
#4
apull2020-12-05 16:01
putchar(n%10+'0');后面加一句 putchar(' ');
#5
bccnzq2020-12-06 19:57
回复 4楼 apull
多谢大佬
#6
topbest2020-12-06 20:06
每次都除以10
1