阿文


私信TA

用户名:dotcpp0706700

访问量:69

签 名:

等  级
排  名 51143
经  验 245
参赛次数 0
文章发表 1
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:首先分3步,第一步用while循环来获取位数

第2步用递归来进行正序输出

第3步用for循环,在这之前,你需要明白个位数是num/10的0次方,接着在%10取到我们所需要的位数,比如987除10的次方等于987接着%10得到7,以此类推百位数也是这种操作

注意事项:因为咱们需要用pow(x,y),故引入#include

#include

#include


void  aw(int n)

   {

    if(n>9)

   {

    aw(n/10);

   }

    printf("%d ",n%10);

   

   

   }//第2步递归

   int main()

{

  int c=0,b;

  int d=0;

  scanf("%d",&c);// 输入一个数

  b=c;  //将c赋值给b是为了保留c的值,因为后面循环用了c,c的值会变

  while(c!=0){

 

  c=c/10;

  d++;

  

  }        //求得位数

  printf("%d\n",d);

  aw(b);      //输出正序值

  printf("\n"); 

  for(int e=0;e<d;e++){

 

  int g=b/pow(10,e);

  printf("%d",g%10);

  }         //输出逆序值

  

    return 0;

}


 

0.0分

1 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区