把任意十进制正整数转化为二进制数

LXW19900825 2011-01-04 07:22:23
#include "stdio.h"
#include "math.h"
#include "stdlib.h"
int j=0;
char* toBinary(int n)
{
char* ch = new char[1000];
int i;
for(i = n;i>=1;i/=2)
{
ch[j] = i%2+48;
j++;
}
return ch;
}

int main()
{
char *ch = new char[1000];
ch = toBinary(100);
for(j--;j>=0;j--)
printf("%c",ch[j]);
printf("\n");
return 0;
}
这里为什么要用char型,能详细点吗
...全文
809 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Thirty 2011-01-04
  • 打赏
  • 举报
回复

char* ch = new char[1000];//你c代码混进c++了


寂寞的泡面 2011-01-04
  • 打赏
  • 举报
回复
储存一个char类型的变量当然用char类型了,用int类型不是浪费吗?
masmaster 2011-01-04
  • 打赏
  • 举报
回复
菜鸟练习, 请多指教, (才学到数组)


#include <stdio.h>

int main () {

int n,m,j,i=0;
int array[100];

printf ("Enter a dec-number:");
scanf ("%i",&n);

while (n!=0){
m = n % 2;
array[i] = m;
i++;
n /= 2;
}
printf ("It's Bin-number:");

for(j=(i-1);j>=0;j--){
printf ("%i",array[j]);
}
return 0;
}


测试结果(任意位我做不到)

root@yeah ~/myc
$ ./d2b
Enter a dec-number:12
It's Bin-number:1100
root@yeah ~/myc
$ ./d2b
Enter a dec-number:123
It's Bin-number:1111011
root@yeah ~/myc
$ ./d2b
Enter a dec-number:1234
It's Bin-number:10011010010
root@yeah ~/myc
$ ./d2b
Enter a dec-number:12345
It's Bin-number:11000000111001
root@yeah ~/myc
$ cd d:

root@yeah /cygdrive/d
$ sh d2b.sh 12345
12345's BinCode is:11000000111001
Convert Finish!

root@yeah /cygdrive/d
$ sh d2b.sh 123456
123456's BinCode is:11110001001000000
Convert Finish!

root@yeah /cygdrive/d
$
jixingzhong 2011-01-04
  • 打赏
  • 举报
回复
使用char,可以减少内存使用,char已足够。
  • 打赏
  • 举报
回复
也可用其他类型啊,比如int型,主要是为了方便表达结果而已,没有什么其它原因。
下面是用int型的

int j=0;
int* toBinary(int n)
{
int* ch = new int[1000];
int i;
for(i = n;i>=1;i/=2)
{
ch[j] = i%2;
printf("%d ",ch[j]);
j++;
}
return ch;
}

int main()
{
int *ch = new int[1000];
ch = toBinary(100);
for(j--;j>=0;j--)
printf("%d",ch[j]);
printf("\n");
return 0;
}

yuppy 2011-01-04
  • 打赏
  • 举报
回复
大哥你这代码 有问题吧...

ch = toBinary(100);//这不行的把... 函数中的ch还在么 ..

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧