论程序设计Test,PTA天梯赛的“L1-007 念数字”?

博客讨论了PTA天梯赛中的"L1-007 念数字"题目,强调问题本质是分解整数。博主建议将负数转换为正整数,然后使用函数和switch-case结构处理拼音输出。提出了利用10的次方进行分解的方法,避免了简单的%和/10操作导致的反向输出问题。

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

首先Up主发现,大学老师出的题很会唬人,讲真,不骗人~~~~~~

那么接下来,跟着Up主来分析一下这道题:

1、首先,这道题无非就是一道分解整数的题。不要被所谓的输出样式迷惑,要探求其本质!

2、此题没有任何数字大小的限制,只要求是整数,所以写出的程序必须能对整个整数数域可行!

3、对于输出的拼音,最好的方法Up主个人认为不是用字符串,而是函数+switch-case。

4、题的说明里,讲明了会有负数,所以在分解整数之前是不是应该用个小技巧将其先变成正整数呢?或者有更好的直接分解负数的方法也好,只是会不会更加麻烦呢?变为整数后,岂不是和整数分解方法一样吗?

5、到了划重点的时候了

     首先,对于分解一个整数,简单的方法就是不断地%并/10,直到这个数越来越小,最后留下1位为止。但是,本题给的情况并不能适用这个方法。要求内隐含着正向分解的要求。

     如果输入的是123,输出的拼音总不能是san er yi吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值