本题要求实现一个统计整数中指定数字的个数的简单函数。
函数接口定义:
int CountDigit( int number, int digit );
其中number是不超过长整型的整数,digit为[0, 9]区间内的整数。函数CountDigit应返回number中digit出现的次数。
裁判测试程序样例:
#include <stdio.h>
int CountDigit( int number, int digit );
int main()
{
int number, digit;
scanf("%d %d", &number, &digit);
printf("Number of digit %d in %d: %d\n", digit, number, CountDigit(number, digit));
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例:
-21252 2
结尾无空行
输出样例:
Number of digit 2 in -21252: 3
预备知识 :
do{
x=number%10;
number/=10; //从末尾逐个取出数字
}while(number!=0);
答案:
int CountDigit( int number, int digit ){
int x;int ret=0;
if(number<0){
number=-number; //处理数字为负数的情况,题目中没有给math.h.
}
do{
x=number%10; //取出数字的最后一位,例如number=2152,x=2
number/=10; //去掉最后一位数字,number=215
if(x==digit){
ret++; //ret计相等的次数
}
}while(number!=0); //分号易遗漏
return ret;
}
本文介绍了如何实现一个C语言函数,该函数用于计算一个整数中特定数字的出现次数。通过逐位检查数字并更新计数器,函数能够处理正负整数,并返回指定数字在输入整数中的出现频率。示例代码详细展示了函数的实现过程。
1106

被折叠的 条评论
为什么被折叠?



