出处: 《C程序设计》(夏宝岚) P62
练习将一个整数的各位分离处理的方法:
5.9 统计正整数的各位数字中的0的个数,并求各位数字中最大者。例如:31040,其中0的个数是2,最大数是4。
#include <stdio.h>
int main()
{
int n, count, max, t;
count = max = 0; /* count记录0的个数, max记录最大者 */
scanf("%d", &n);
do
{
t = n % 10; /* 取当前的最低位 */
if(t == 0)
count++;
else
if(max < t)
max = t;
n /= 10;
}while(n);
printf("count=%d, max=%d\n", count, max);
return 0;
}
运行结果:
===============================
31040↙
count=2, max=4
===============================
★ 对绐定的正整数n, 重复用t = n % 10 和 n = n / 10, 由低到高逐位分离出每一位数字,直至n为零为止。
[相关] 递归实现整数各位的分离(由高位到低位)。
评论