1009: [编程入门]数字的处理与判断

题目描述
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
输入
一个不大于5位的数字
输出
三行 第一行 位数 第二行 用空格分开的每个数字,注意最后一个数字后没有空格 第三行 按逆序输出这个数
样例输入
12345
样例输出
5
1 2 3 4 5
54321

c语言代码:
// 数字的处理与判断:
#include<stdio.h>
int main(){
    int num,invert_order;
    scanf("%d", &num);
    int num_cal = num; //使用num_cal带入计算
    int bit_sum=0;  //存放总位数
    int arr[5];  //存放倒数
    if(num_cal/10 == 0){
        printf("1\n");
        printf("%d \n",num_cal);
        printf("%d", num_cal);
    }else{
        while(num_cal/10!=0||num_cal%10!=0){
            bit_sum++;
            if (bit_sum == 1) invert_order = num_cal % 10;
            else if (bit_sum > 1) invert_order = invert_order * 10 + num_cal % 10;//计算倒数
            num_cal = num_cal/10;
        }
        int i, temp = invert_order;
        for(i = 0; i<bit_sum; i++){
            arr[i] = temp % 10;
            temp = temp / 10;
        }
        printf("%d\n",bit_sum);
        for(i = 0; i<bit_sum; i++){
            printf("%d ", arr[i]);
        }
        printf("\n");
        printf("%d\n", invert_order);
    }
    return 0;
}

 

转载于:https://www.cnblogs.com/cainiaoxuexi2017-ZYA/p/10958208.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值