给定一个整数:求它是几位数;并顺序和逆序输出它的每一位数

本文介绍如何确定一个整数的位数,并分别顺序和逆序输出其每一位。通过连续除以10取商和求余操作,可以实现从高位到低位的顺序输出,而逆序输出则需要从低位到高位依次提取数字。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,求几位数

#include <stdio.h>

int Getfigures(int n)        //统计整数n的位数

{                                                   
    int count=0;
    do
    {
        count++;
        n/=10;
    }while(n!=0);

    return count;
 }

 /* int Getfigures(int n)   //若要用此函数,则对0求其位数会出错,可加if-else语  

句补缺。此方法采用while()语句,上面采用do-while() 语句,这就体现了while()语句

和do-while() 语句的区别,事实证明二者只在0和1上有区别。

{ 
    int count=0;           
    while(n!=0)
    {  
        count++;    
        n/=10;
    }
    return count;
}
*/

顺序输出每位数

void PrintOrder(int n)     //顺序输出各个位上的数字

{
     int count;                                 
     count=Getfigures(n);
     int power=1;
     for(int i=0;i<count-1;i++)
     {
         power*=10;
     }
     do
     {
         printf("%d",n/power);
         n%=power;
         power/=10;
     }while(n!=0);
      printf("\n");
}

1234/1000 -> 1 1234%1000=234
234/100

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值