C算法:逆序3位数,排除0开头;

文章讲述了如何使用C语言编写程序,接收用户输入的3位正整数,去除末尾的0并按位逆序输出。代码中包含了数据获取、格式化和逆序处理的部分。

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

需求:

程序每次输入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。

输入样例:

123

输出样例:

321

代码实现:

#include<stdio.h>
#include<string.h>

int main(){

        int num;
        int i;
        char data[3];
one:
        while(1){
                memset(data,'\0',3);
                printf("please input 3digits num:\n");
                scanf("%d",&num);
                if(num/1000 != 0){
                        printf("erro: please input 3digits num!\n\n");
                        goto one;
                }
                sprintf(data,"%d",num);
                printf("data:        %s\n",data);
                printf("reverse data:");
                for(i=3;i>0;i--){
                        if(data[i-1]=='0' && i==2){
                                printf("%c",data[i-1]);
                        }
                        if(data[i-1]!='0'){
                                printf("%c",data[i-1]);
                        }
                }
        printf("\n\n");
        }
        return 0;
}

打印:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值