C语言 本题要求实现一个函数,可统计任一输入的整数的位数。例如输入12345,输出位数5,输入-20输出位数2,输入0,输出位数1。
时间: 2023-12-30 11:24:48 浏览: 225
以下是一个实现统计整数位数的C语言函数的例子:
```c
#include <stdio.h>
int Count_Digit(const int N) {
int count = 0;
int num = N;
if (num < 0) {
num = -num;
}
if (num == 0) {
count = 1;
} else {
while (num > 0) {
num /= 10;
count++;
}
}
return count;
}
int main() {
int N;
scanf("%d", &N);
printf("%d\n", Count_Digit(N));
return 0;
}
```
相关问题
用c语言写本题要求实现一个函数,可统计任一整数中某个位数出现的次数。例如-21252中,2出现了3次,则该函数应该返回3。
可以使用以下代码实现统计整数中某个位数出现的次数:
```c
#include <stdio.h>
int count_digit(int n, int digit) {
int count = 0;
// 将整数转为正数
if (n < 0) {
n = -n;
}
// 统计指定位数出现的次数
while (n > 0) {
if (n % 10 == digit) {
count++;
}
n /= 10;
}
return count;
}
int main() {
int n = -21252;
int digit = 2;
int count = count_digit(n, digit);
printf("%d在%d中出现了%d次\n", digit, n, count);
return 0;
}
```
在该代码中,我们定义了一个 `count_digit` 函数,用于统计整数中某个位数出现的次数。首先,我们将整数转为正数,然后使用 `while` 循环遍历整数的每一位,判断该位是否等于指定位数,如果是,则计数器加1。最后返回计数器的值。在主函数中,我们传入一个整数和一个位数,调用 `count_digit` 函数统计该位数在整数中出现的次数,并输出结果。
用c语言编写程序:本题要求实现一个函数,可统计任一整数中某个位数出现的次数。例如-21252中,2出现了3次,则该函数应该返回3。
以下是用C语言编写的实现该功能的程序:
```c
#include <stdio.h>
int countDigit(int num, int digit) {
int count = 0;
while (num != 0) {
int remainder = num % 10;
if (remainder == digit) {
count++;
}
num /= 10;
}
return count;
}
int main() {
int num, digit;
printf("请输入整数和要统计的位数:\n");
scanf("%d %d", &num, &digit);
int result = countDigit(num, digit);
printf("%d中数字%d出现的次数为:%d\n", num, digit, result);
return 0;
}
```
该程序中定义了一个 `countDigit` 函数,用于统计指定整数中某个位数出现的次数。该函数通过循环遍历整数的每一位,检查是否与指定的位数相同,如果相同则计数器加1。最后返回计数器的值。
在 `main` 函数中,通过用户输入获取整数和要统计的位数,并调用 `countDigit` 函数进行统计。最后输出统计结果。
注意,该程序没有对输入进行错误处理,需要自行添加。
阅读全文