有关数据类型的转换的编程

来源:百度知道 编辑:UC知道 时间:2024/05/30 22:14:12
函数void fun(int x,char*p)实现十进制整数x到二进制的转换。转换后的二进制数据以字符串的方式放置于p所指向的数组中。如输入13,输出1101,输入-13,输出-1101

void fun(int x,char *p)
{
int t, i, j = 0, k =x;
char ch;

while (k)
{
t = k % 2;

if (t & 1)
p[j++] = '1';
else
p[j++] = '0';

k /= 2;
}

if (x < 0)
p[j++] = '-';

p[j] = '\0';

for (i = 0; i < j/2; ++i)
{
ch = p[j-i-1];
p[j-i-1] = p[i];
p[i] = ch;
}
}

void main()
{
char a[100];
int i;

for (i = 10; i < 100; ++i)
{
fun(i, a);
printf("%d ==> %s\t",i, a);
}

printf("\n");
}