C语言自定义函数int change(int str[],int num)函数把10进制转化2进制
时间: 2023-06-17 20:06:54 浏览: 84
可以使用以下代码实现将十进制数转换为二进制数:
```c
int change(int str[], int num) {
int i = 0;
while (num > 0) {
str[i] = num % 2;
num /= 2;
i++;
}
return i;
}
```
其中,`str` 是存储二进制数的数组,`num` 是要转换的十进制数,函数返回值为转换后二进制数的位数。
使用时,可以先定义一个足够大的数组,然后传入函数进行转换,最后打印数组中的值即可。例如:
```c
#include <stdio.h>
int change(int str[], int num);
int main() {
int decimal = 100;
int binary[100];
int length = change(binary, decimal);
for (int i = length - 1; i >= 0; i--) {
printf("%d", binary[i]);
}
printf("\n");
return 0;
}
int change(int str[], int num) {
int i = 0;
while (num > 0) {
str[i] = num % 2;
num /= 2;
i++;
}
return i;
}
```
输出结果为:`1100100`,即十进制数 `100` 转换为二进制数为 `1100100`。
阅读全文