编写一个简单的C语言求一个数的位数
时间: 2024-11-20 19:44:02 浏览: 8
一个用c语言编写的水仙花数程序
编写一个简单的C语言程序来求一个整数的位数,你可以使用取余和右移运算符来实现。下面是一个示例函数:
```c
#include <stdio.h>
int countBits(int num) {
int count = 0;
while (num != 0) {
count++;
num = num >> 1; // 右移一位相当于除以2,直到num变为0
}
return count;
}
int main() {
int inputNumber;
printf("请输入一个整数:");
scanf("%d", &inputNumber);
int bitCount = countBits(inputNumber);
printf("给定数字的位数是:%d\n", bitCount);
return 0;
}
```
这个程序首先获取用户输入的一个整数,然后调用`countBits`函数计算它的二进制表示中1的个数,即位数。当`num`变成0时,循环结束。
阅读全文