题目
c语言 将十进制数用算法转换成其它进制
转化为二进制、八进制和十六进制.重点是一定要用算法.
转化为二进制、八进制和十六进制.重点是一定要用算法.
提问时间:2021-01-03
答案
这个是用 求余来算,比如求十进制数 x(x>100) 的8进制,先通过 x%8 可以得到个位(末位)上的数(你可以思考一下,为什么是求余得到的结果作为个位,当十进制数等于8时,必然会进位,求余的结果正好是不能进位的部分),再 x=x/8(这就像位移,x的8进制数向右移了一位),这样已经求出来的 个位 位移后没有了,原来的十位变成了个位,继续把得到的x按上面的方式求末位,就能求出来十位,按照这种方式得到的 8进制数 是反的(先得到个位,再十位.),这样很适合放到栈中,取得时候又会反过来,伪代码可以这样写
while(x){
printf("%d",x%n);//会打印出x转换为 N进制数 从低位到高位上的每一位数
x/=n;
}
以前我用栈写过一个十进制转换N进制的,
#include
#include
#include
typedef int INT;
typedef struct dd
{
INT data;
struct dd *next;
}LNode,*LStack;
LStack pushstack(LStack top,int x)
{
LStack p;
p=(LStack)malloc(sizeof(LNode));
if((x)!=-1) {p->data=(x);
p->next=top;
top=p;}
return top;
}
LStack outstack(LStack top,int *x)
{
LStack p=top;
*x=p->data;
top=p->next;
free(p);
return top;
}
main()
{
int x,n;
LStack top=NULL;
printf("请输入原数及要转换的进制:");
do{
scanf("%d%d",&x,&n); //输入一个十进制数和要转换的进制,比如3 2 得到11
}while(x>35||x
while(x){
printf("%d",x%n);//会打印出x转换为 N进制数 从低位到高位上的每一位数
x/=n;
}
以前我用栈写过一个十进制转换N进制的,
#include
#include
#include
typedef int INT;
typedef struct dd
{
INT data;
struct dd *next;
}LNode,*LStack;
LStack pushstack(LStack top,int x)
{
LStack p;
p=(LStack)malloc(sizeof(LNode));
if((x)!=-1) {p->data=(x);
p->next=top;
top=p;}
return top;
}
LStack outstack(LStack top,int *x)
{
LStack p=top;
*x=p->data;
top=p->next;
free(p);
return top;
}
main()
{
int x,n;
LStack top=NULL;
printf("请输入原数及要转换的进制:");
do{
scanf("%d%d",&x,&n); //输入一个十进制数和要转换的进制,比如3 2 得到11
}while(x>35||x
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
最新试题
- 15 24 6 20 8 15 10 12 找规律
- 2AB为圆⊙O的直径,弦CD垂直AB于E,角CDB等于15度,OE等于2倍根号3,求⊙O半径
- 3新航路开辟对世界的影响 小作文
- 4如果有防护,太阳黑子用肉眼也可以看到吗?
- 5学校食堂有大米的重量是面粉的2倍如果每天吃35千克面粉50千克大米几天后面粉全部吃完大米还剩300千克该食堂
- 6概率 报纸
- 71.She said she would leave the message on the headmaster’s desk.
- 8有10块巧克力,每天至少吃1块,有多种吃法?
- 9new york state department of financial services是什么意思
- 10点A(3,y1)和点B(-2,y2)都在直线y=-2x+3上,则y1和y2的大小关系是( ) A.y1>y2 B.y1<y2 C.y1=y2 D.不能确定
热门考点
- 1把多于KN的物体任意分放进N个空抽屉(K是正整数),那么一定有一个抽屉中至少放进了(K+1)个物体,这句话中kn是什么意思
- 2课文秋天的怀念我的暴怒无常,有哪些表现对此应该怎样理解
- 3图中正方形的面积是20平方厘米,这个正方形外最小圆的面积是_.
- 4知线段AB,延长到AB到C,使BC=二分之一AB,延长BA到D,使AD=2AB,M,N分别是BC,AD的中点,若MN=18cm求AB长
- 5y=log2[(3-sinx)/(3+cosx)]的值域
- 6求人写一篇英语作文 after school 要求自己写 100字以上 发到我邮箱sunerchen1112@yahoo.com.cn 谢谢
- 7Keep it
- 8英语翻译
- 9如何提高九年级英语教学成绩
- 10小学一年级一朵组词要三个想了半天只想出一朵花、一朵云还有什么,