C语言网

 找回密码
 加入社区!

QQ登录

只需一步,快速开始

楼主: klttl

用C语言十进制转化为二进制的三种方法!你能用几种?! [复制链接]

Rank: 1

主题
0
帖子
7
C币
8 枚
在线时间
1 小时
发表于 2010-8-5 16:37:43 |显示全部楼层
真的很不错噢!谢谢楼主啦

Rank: 2

主题
2
帖子
80
C币
87 枚
在线时间
16 小时
发表于 2010-9-1 23:51:51 |显示全部楼层
还有利用栈实现,以下是算法核心的转换函数,适用于转换成任意进制,其中栈的ADT就省略了
void conversion()
{ // 对于输入的任意一个非负十进制整数,打印输出与其等值的N进制数
   SqStack s;
   unsigned n; // 非负整数
   int e;
   InitStack(s); // 初始化栈
   printf("将十进制整数n转换为%d进制数,请输入:n(≥0)=",N);
   scanf("%u",&n); // 输入非负十进制整数n
   while(n) // 当n不等于0
   { Push(s,n%N); // 入栈n除以N的余数(N进制的低位)
     n=n/N;
   }
   while(!StackEmpty(s)) // 当栈不空
   { Pop(s,e); // 弹出栈顶元素且赋值给e
     printf("%d",e); // 输出e
   }
   printf("\n");
}

void main()
{
   conversion();
}

Rank: 1

主题
0
帖子
11
C币
13 枚
在线时间
1 小时
发表于 2010-9-4 23:00:26 |显示全部楼层
你们好!我是刚刚学习C语言的  可以对我说说学习他要注意什么啊   有没有适合初学者的书籍下载地址啊   谢谢
您需要登录后才可以回帖 登录 | 加入社区!

C语言 ( 粤ICP备11042647号-2 )

GMT+8, 2012-2-7 22:23

©2009-2011 cyuyan.com.cn

回顶部