判断位数并逆序输出
#include <stdio.h>
int main()
{
int m = 7; //可以更改m的值,但该代码仅支持最高三位数
int g, s, b;
g = m % 10;
s = m /10 % 10;
b = m / 100;
//q = m / 1000;得到千位上的数字(前提该数不超过9999
if(b!=0){
printf("是个3位数\n");
printf("逆序输出:%d %d %d",g, s, b);
}else if(s!=0){
printf("是个2位数\n");
printf("逆序输出:%d %d", g, s);
}else{
printf("是个1位数\n");
printf("逆序输出:%d", g);
}
//printf("个位是%d\n", g);
//printf("十位是%d\n", s);
//printf("百位是%d\n", b);
return 0;
}
学习到:
- 获得一个数各个位上的数方法
- 使用/和%
- 判断一个数是几位数的方法
- 看位上数字是否为零
eg:百位不为零,则是三位数
十位不为零,则是二位数
个位不为零,则是个位数
- 将一个数逆序输出的方法
- 1先获得各个位上的数;2将输出位置排列下
- 局部变量,即使变量名相同,但也不互通
- 他们的作用域不同,值也不同,变化方法也会有所区别
- 递归函数有返回值时,一定要用变量接收,否则函数就没有意义

浙公网安备 33010602011771号