用c语言编写函数,将任意十进制正整数转换为二进制,在main函数中输入任意整数,调用函数完成转换,在main函数中输出转换后的值。
时间: 2023-06-10 17:07:12 浏览: 181
以下是将任意十进制正整数转换为二进制的C语言函数实现:
```c
#include <stdio.h>
void decToBin(int n) {
int binaryNum[32];
int i = 0;
while (n > 0) {
binaryNum[i] = n % 2;
n = n / 2;
i++;
}
for (int j = i - 1; j >= 0; j--)
printf("%d", binaryNum[j]);
}
int main() {
int n;
printf("Enter a decimal number: ");
scanf("%d", &n);
printf("Binary number is: ");
decToBin(n);
return 0;
}
```
在此实现中,我们首先定义了一个函数 `decToBin`,该函数接收一个十进制正整数 `n` 作为参数。函数将该数字转换为二进制格式,并将其存储在一个整数数组 `binaryNum` 中。然后我们使用一个循环遍历该数组并输出其元素,从而得到转换后的二进制数。
在 `main` 函数中,我们首先提示用户输入一个十进制正整数,然后使用 `scanf` 函数将其读入到变量 `n` 中。接下来,我们调用函数 `decToBin`,将用户输入的数字作为参数传递给该函数。最后,我们在主函数中输出转换后的二进制数字。
注意,以上实现中假设二进制数字的位数不超过 32 位。如果需要支持更长的二进制数字,请相应地调整代码。
阅读全文