本题要求实现一个统计整数中指定数字的个数的简单函数。
函数接口定义:
int CountDigit( int number, int digit );
其中number是不超过长整型的整数,digit为[0, 9]区间内的整数。函数CountDigit应返回number中digit出现的次数。
思路:分三种情况:
第一种,当number为负数时,把number转化为正数,乘以负一,应为避免出现负数求余数。
第二种,当number为0时,出现次数直接为1;
第三种,当number大于0时,对number求余,判断与输入是不是相等,相等,次数加一,除以10去掉最后一位.
int CountDigit( int number, int digit )
{
int cnt=0;
int d;
if(number<0)
{
number=(-1)*number;
}
if(number==0)
{
cnt=1;
}
while(number>0)
{
d=number%10;
if(d==digit)
{
cnt++;
}
number=number/10;
}
return cnt;
}