为什么输出每一位的数字 这么写是正确的(深蓝色的地方) 有点无法理解 有人可以解释一下吗
为什么输出每一位的数字 这么写是正确的(深蓝色的地方) 有点无法理解 有人可以解释一下吗
为什么输出每一位的数字 这么写是正确的(深蓝色的地方) 有点无法理解 有人可以解释一下吗
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 庞加莱的算法空间 2023-10-27 10:56关注
这个是利用了一点点数学原理哈,首先呢,c语言里的除法是"整型除法",是只保留整数部分,丢弃余数的哈。比如346/10=34
遇到这种看起来有点抽象的代码,可以尝试举个实际的例子。比如一个五位数12345,那么按照你的代码,
c=1, d=12, e=123, f=1234, g=12345,那么你可以再看一下蓝色部分的代码,恰好可以输出每个位置上的数字。不过,我感觉这个代码还可以再"自动化"一些,你看这么写可以嘛(如果你已经学习过循环while语句的话)int a; scanf("%d", &a); // 输入正整数a while(a > 0){ // a>0说明a还有整数位没打印 int d = a % 10; // 取出最低位的数字 printf("%d", d); // 打印结果 a = a / 10; // 这里a/10相当于是去掉了a的最低位,下一次循环可以准备处理倒数第二位 }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 WPF RichTextBox格式化大量文本卡顿如何解决
- ¥15 什么设备可以研究OFDM的60GHz毫米波信道模型
- ¥15 不知道是该怎么引用多个函数片段
- ¥15 pip install后修改模块路径,import失败,需要在哪里修改环境变量?
- ¥15 爬取1-112页所有帖子的标题但是12页后要登录后才能 我使用selenium模拟登录 账号密码输入后 会报错 不知道怎么弄了
- ¥30 关于用python写支付宝扫码付异步通知收不到的问题
- ¥50 vue组件中无法正确接收并处理axios请求
- ¥15 隐藏系统界面pdf的打印、下载按钮
- ¥15 MATLAB联合adams仿真卡死如何解决(代码模型无问题)
- ¥15 基于pso参数优化的LightGBM分类模型