统计正整数中指定数字的个数
题目内容:
从键盘输入一个正整数number,求其中含有指定数字digit的个数。例如:从键盘输入正整数number=1222,若digit=2,则1223中含有 3个2,要求用函数实现。函数原型为:int CountDigit(int number,int digit);
程序运行结果示例1:
Input m,n:
1222,2↙
3
程序运行结果示例2:
Input m,n:
1234,6↙
0
输入提示信息:
“Input m,n:\n”
输入格式:
“%d,%d”
输出格式:
“%d\n”
注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!
时间限制:500ms内存限制:32000kb
#include<stdio.h>
int CountDigit(int number,int digit);
int main()
{
int number,digit;
printf("Input m,n:\n");
scanf("%d,%d",&number,&digit);
printf("%d\n",CountDigit(number,digit));
return 0;
}
int CountDigit(int number,int digit)
{
int a;
int count=0;
do{
a=number%10;
if(a==digit)
{
count++;
}
number/=10;
}while(number!=0);
return count;
}
本题中我们我们用到了int CountDigit(int number,int digit);的函数原型,因为我们对于数字的输入位数是未知,所以我们用do-while这类直到型循环语句;计算输入的数字的每一位与输入数字是非相等,是的话就count加1;直到number为0时结束循环。
版权声明:本文为weixin_61684596原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。