C语言:输入一个长整数n,从高位开始逐位分离并输出。要求使用while或do-while语句实现循环结构。

题目:

程序功能:输入一个长整数n,从高位开始逐位分离并输出。例如输入123456,程序运行结果如下图。要求使用while或do-while语句实现循环结构。

考察知识:

1、关系表达式、逻辑表达式及运算符的使用。

2、while或do…while实现循环结构程序设计。

3、数组。

解题思路:

1、定义长整型避免输入数据过大而溢出,若希望输入更大的数,可定义unsigned long long,即无符号的长整型。

2、定义数组并将其中元素全部初始化为0,用于后续存放分离后的数。

3、输入一个正整数,例如:输入了12345。

4、定义循环变量i。

5、利用循环实现逐位分离长整数。a、b、c……为分离长整数具体步骤。

a、a[i] = n % 10;取个位数字,并将所得数存放到数组中。如第一次循环:a[0]=12345%10=5 第二次循环:a[1]=1234%10=4……

b、n /= 10;相当于n=n/10;每次循环,都将丢弃个位数字,成为一个新数字。如第一次循环:12345/10=1234 第二次循环:1234/10=123……

6、计数器更新次数比分离后所得数的数量多1,即多执行了一次i++,故需要i--。

7、再次利用循环输出分离后的数。

代码:

运行结果:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值