//统计十进制n的位数 //逆序输出十进制数字n //顺序输出十进制的每一位

统计十进制n的位数时,对n进行除运算。

#include<stdio.h>

//统计十进制n的位数
int GetFigures1(int n)
{
int count = 0;//记录位数
do
{
count++;//对记录位数的变量进行加一操作
n/=10;//对n进行除运算
}while(n!=0);//循环条件
return count;
}

对于一个十进制的数,逆序输出时,需要对各位数字进行取得和丢弃。(逆序输出还可以 )

//逆序输出十进制数字n

void PrintReverse(int n)
{
if(n<0)//对负数的处理
{
printf("-");
n=-n;
}
do
{
printf("%d ",n%10);//利用取余的方式得到个位数值并输出
n/=10;//利用除运算将此个位丢弃。
}while(n!=0);
printf("\n");

}

顺序输出每一位时,需要对十进制数n进行高位的取得和丢弃。

//顺序输出十进制的每一位
void PrintOrder(int n)
{

int count = GetFigures(n);//调用求位数的函数,保存n的位数的值

int power = 1;//用来做除和取余运算
for(int i=0;i<count-1;i++)//计算10的位数减一次方的值
{
power *= 10;
}
do
{
printf("%d ",n/power);//利用除运算得高位
n%=power;//利用取余运算丢高位
power/=10;
}while(n!=0);
printf("\n");
}
int main()
{
printf("%d\n",GetFigures(1234));//测试用例
printf("%d\n",GetFigures(1));
printf("%d\n",GetFigures(-1));
printf("%d\n",GetFigures(0));
printf("%d\n",GetFigures(-1234));
PrintReverse(1234);
PrintReverse(1);
PrintReverse(-1);
PrintReverse(-1234);
PrintOrder(1234);
PrintOrder(-1);
PrintOrder(1);
PrintOrder(-1234);
return 0;


}

结果:


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Java的十进制逆序数是指将一个十进制数的各个数字逆序排列后得到的新数。例如,123的逆序数为321。 以下是一种实现Java十进制逆序数的方法: ```java public static int reverse(int n) { int result = 0; while (n > 0) { result = result * 10 + n % 10; n /= 10; } return result; } ``` 这个方法首先将result初始化为0,然后通过不断地将n的个位数添加到result的末尾,来逐步构建出n的逆序数。具体来说,每次循环,先将result乘以10,然后将n对10取模得到个位数,将其加到result的末尾,最后将n除以10向下取整,以去掉已经处理过的个位数。当n变为0时,循环结束,result中存储的就是n的逆序数。 可以通过以下代码来测试该方法: ```java public static void main(String[] args) { int n = 123; int reversed = reverse(n); System.out.println(reversed); // 输出321 } ``` ### 回答2: Java的十进制逆序数是指将一个十进制数的各位数字逆序排列后得到的新数。 实现十进制逆序数的方法可以通过以下步骤: 1. 将给定的十进制数转换为字符串类型,方便进行字符串的逆序操作。 2. 使用StringBuilder或StringBuffer等字符串处理类,将字符串逆序排列。 3. 将逆序后的字符串转换回十进制数类型。 以下是一个示例代码实现: ``` public class DecimalReverseNumber { public static int reverseNumber(int number) { String numberStr = String.valueOf(number); // 将整数转换为字符串 StringBuilder reverseStr = new StringBuilder(numberStr).reverse(); // 将字符串逆序排列 String reverseNumberStr = reverseStr.toString(); // 将逆序后的字符串转换为普通字符串 int reverseNumber = Integer.parseInt(reverseNumberStr); // 将逆序后的字符串转换为整数 return reverseNumber; } public static void main(String[] args) { int number = 12345; int reverseNumber = reverseNumber(number); System.out.println("原始数:" + number); System.out.println("逆序数:" + reverseNumber); } } ``` 执行以上代码,将输出: 原始数:12345 逆序数:54321 这就是Java中实现十进制逆序数的一个简单示例。 ### 回答3: Java的十进制逆序数是指将一个整数的十进制表示中的数字逆序排列后得到的新整数。 实现这个功能可以按照以下步骤进行: 1. 将要逆序的整数转化为字符串类型。 2. 使用StringBuilder类的reverse()方法将字符串逆序。 3. 调用StringBuilder类的toString()方法,将逆序后的字符串转换为整数类型。 例如,对于整数12345,将其转化为字符串类型为"12345",然后使用StringBuilder类的reverse()方法将其逆序得到字符串"54321",最后再将其转化为整数类型得到54321。 下面是一个Java实现的示例代码: ``` public class ReverseDecimalNumber { public static void main(String[] args) { int number = 12345; String numberStr = String.valueOf(number); StringBuilder reversedNumberStr = new StringBuilder(numberStr).reverse(); int reversedNumber = Integer.parseInt(reversedNumberStr.toString()); System.out.println("原始数值:" + number); System.out.println("逆序数值:" + reversedNumber); } } ``` 以上代码输出的结果为: ``` 原始数值:12345 逆序数值:54321 ``` 这样就完成了整数的十进制逆序数的计算。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值