当前位置: 首页 > news >正文

从循环角度分析逐位分离法

1、常规的逐位分离,求和或求积问题
一般会给固定的位数,让解题者按照位数利用%或\进行不同位置数字的提取。

2、遇到非常规问题,对于不限位数的整数的处理法则
(1)方法一:常规数组法,通过导入数组元素,逐位分离,运用高阶方法解决低阶问题,但值得注意的是,初次接触不限位数的逐位分离的大多数初学者,只拥有循环和判断语句的知识。在缺少对于数组知识的认知下,无法解决问题或是提出合理的程序架构。

(2)方法二:从个人最初对于此类问题的理解出发,我当时构想了一种循环嵌套switch语句实现了在缺乏数组知识下对不同位置数字的剥离和分离处理

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main() {int n;scanf("%d", &n);if (n == 0) {printf("ling");}else {if (n < 0) {printf("fu ");n *= -1;}int shi_n = 10;while (n / shi_n > 0) {shi_n *= 10;}shi_n /= 10;while (shi_n >= 1) {int num = n / shi_n;n -= num * shi_n;shi_n /= 10;/* int t=10;while (n/t>0){t=t*10;}t=t/10;while (t>=1){int n=n/t;n=n-(n*t);t=t/10;*/switch (num) {case 1:printf("yi");break;case 2:printf("er");break;case 3:printf("san");break;case 4:printf("si");break;case 5:printf("wu");break;case 6:printf("liu");break;case 7:printf("qi");break;case 8:printf("ba");break;case 9:printf("jiu");break;case 0:printf("ling");break;}if (shi_n > 0) {printf(" ");}}}return 0;
}

在这里插入图片描述

PS:此代码设计是为例实现对于整数的各个组成数字的发音
个人构想:
(1)我在开始导入了while语句,首先依据while的判断条件,提取出了对应的shi_n,该变量由于循环条件语句显示,会比输入的n的位数多一,所以选择了除以10.
(2)接着我通过逐位处理,将n的首位数字逐步剥离出来,并构造出逐阶递减的shi_n变量,实现了在循环过程中抽离高位数字的想法,再将其投入switch结构中进行分支处理。

相关文章:

  • 【人工智能之大模型】详述大模型中流水线并行(Pipeline Parallelism)的​GPipe推理框架?
  • 如何选择合适的探针台
  • C#中wpf程序中的x名空间详解
  • 微信小程序 template 模版详解
  • 机器学习之二:指导式学习
  • 精益数据分析(27/126):剖析用户价值与商业模式拼图
  • 有源晶振与无源晶振详解:区别、应用与选型指南
  • 电子电器架构 --- 乘用车电气/电子架构开发的关键挑战与应对策略
  • SQL 查询进阶:WHERE 子句与连接查询详解
  • 【高频考点精讲】前端职业发展:如何规划前端工程师的成长路径?
  • PCL绘制点云+法线
  • 【教程】Windows通过网线共享网络给其它设备
  • python调用ffmpeg对截取视频片段,可批量处理
  • 介绍常用的退烧与消炎药
  • 前端学习笔记(四)自定义组件控制自己的css
  • 写了一个关于SpringAop记录用户操作的功能
  • 从入门到精通汇编语言 第七章(高级汇编语言技术)
  • goweb项目结构以及如何实现前后端交互
  • 【GoChat】密码处理与实现JWT+进行功能单测
  • MuJoCo 关节角速度记录与可视化,监控机械臂运动状态
  • 上海明天起进入“升温通道”,五一假期冲刺33℃
  • 党旗下的青春|83岁仍在“下生活”,他说生活是创作的源泉
  • 伊朗最大港口爆炸:26公里外都能听到,超七百人受伤,原因指向化学品储存
  • 旧衣服旧纸箱不舍得扔?可能是因为“囤物障碍”
  • 闲暇时间的“堕落”
  • 影子调查丨起底“三无”拖拉机产销链:出口掩内销,监管如虚设