c语言入门—数字倒序
来源:互联网 发布:matlab 2016a mac 编辑:程序博客网 时间:2024/05/21 15:43
题目
程序每次读入一个正三位数,然后输出逆序的数字。
注意,当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。
回答
分析:我们可以通过十进制的取整取余特点来分别取到个位、十位、百位的数字
百位:a/100; 对a 进行除以100 那么可以取到百位
个位:a%10;对a 进行10 的取余那么一定会取到最后一位(即个位)
十位:最最复杂的就是取十位 的数字 其实由取一头(百位)一尾(十位)可以知道 我们可以将三位数变成两位数,然后对两位数取余就可以取到十位的数字不是吗?表达式: a/10%10;
代码如下
int main() { int a = 100; printf("请输入一个三位数:\n"); scanf("%d",&a); int baiwei = a / 100; //百位 int shiwei= (a / 10) % 10; // 十位 int gewei = a % 10;// 个位 printf("倒序后结过是:%d%d%d", gewei, shiwei, baiwei); return 0; }
但是运行结果会发现
结果会将100 显示成 001
那么开动你们的小脑袋就可回想起来0乘以任何数都等于0,那么利用这个 特性,我们可以把程序改成如下形式以消除开头位置上的0
int main() { int a = 100; printf("请输入一个三位数:\n"); scanf("%d",&a); int baiwei = a / 100; //百位 int shiwei= (a / 10) % 10; // 十位 int gewei = a % 10;// 个位 /*虽然我们取到了各个位置上的数字但是我们怎么把0去掉呢?? 数学中 0*任何数都等于0 利用这个这个特性可以将 前面的0 去掉 */ printf("倒序后结过是:%d", gewei * 100 + shiwei * 10 + baiwei); return 0; }
哈哈!收工。
阅读全文
0 0
- c语言入门—数字倒序
- C语言入门——数字特征值
- 字符串倒序c语言实现
- C语言 - 按位倒序
- C语言实现字符串倒序
- C语言_倒序输出
- C语言字符串单词倒序
- c语言:数组倒序输出
- C语言编程之——倒序的三位数
- 杂记之C语言之位倒序和字符串倒序
- 数字倒序
- C语言 单向链表倒序
- 面试珠玑 C语言实现字符串倒序
- c 语言用递归法倒序字符串
- C语言指针倒序字符串子函数
- C语言输入一个数,倒序输出
- C语言入门-数字的进制转换
- Linux下的C语言基础编程——倒序储存输出
- SSM+shiro
- 单点登录SSO-使用session共享方式
- [编程题] 最大和
- 声学特征变换 LDA
- hdu5715
- c语言入门—数字倒序
- jdk8新特性:Lambda表达式(也称为闭包、可传递的匿名函数)与函数式接口@FunctionalInterface
- 10 大深度学习架构:计算机视觉优秀从业者必备(附代码实现)
- 下压(LIFO)栈,ResizingArrayStack
- 获取Select标签修改之前的值
- 设计模式之适配器模式与装饰者模式
- 声学特征转换 kaldi工具
- Vue2.X的新武器一览表
- Linux内核三大数据结构——file_operations、file & inode