1 条题解
-
0
思路分析
1. 任务拆解:
- 读取非负整数n
- 计算n的位数
- 按正序输出各位数字(用空格分隔)
- 按逆序输出整个数字
2. 关键点分析:
- 使用循环统计位数并构建逆序数
- 通过逆序数再次反转来获得正序输出
- 注意处理n=0的特殊情况
3. 步骤规划:
- 读取n的值
- 初始化位数计数器g=0,逆序数c=0
- 循环处理n的每一位:
- 获取个位数字w
- 位数计数器加1
- 构建逆序数c
- 删除个位数
- 输出位数g
- 通过逆序数c再次反转输出正序数字
- 输出逆序数c
4. 代码对应:
cin>>n;→ 读取整数while(n)→ 处理每一位数字w=n%10;→ 获取个位数字g++;→ 统计位数c=c*10+w;→ 构建逆序数n/=10;→ 删除个位数cout<<g<<endl;→ 输出位数while(cc)→ 通过逆序数输出正序w=cc%10; cout<<w<<" ";→ 输出正序数字(空格分隔)cc/=10;→ 删除个位数cout<<endl<<c;→ 输出逆序数
- 1
信息
- ID
- 986
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 2
- 标签
- (无)
- 递交数
- 240
- 已通过
- 148
- 上传者