C语言输入任意数字转化为二进制,十进制,八进制,十六进制

2020-12-26 14:18:57 字数 6327 阅读 3753

1楼:匿名用户

#include

voidshowbit(intn)

printf("%d",n%2);

}voidshowoct(intn)

printf("%d",n%8);

}voidshowhex(intn)

printf("%d",n%16);

}intmain()

c语言编程题:从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数,并同时输出。

2楼:匿名用户

/*这题非常简单,你要学过数据结构就非常容易*//*我用个栈来帮你做*/

/*此栈数据项为整型,只定义初始化栈,入栈,出栈操作,输出栈中元素操作*/

#include

#define maxsize 100

typedef struct stack;//顺序栈,也可用链栈void initstack(stack &s)//初始化栈int push(stack &s,int x)//入栈}int pop(stack &s,int &x)//出栈}void display(stack &s)cout<

}//应用程序

void func(int n,int m)//n为十进制数,m为2,8,或16

display(s);

}void main()//这用来测试func//已在vc2005中测试过,可用,至于16进制时怎么输出a,b,..,f,吃过饭我再来贴

3楼:匿名用户

#include

void showbit(int n)

printf("%d",n%2);

}void showoct(int n)

printf("%d",n%8);

}void showhex(int n)

printf("%d",n%16);

}int main()

4楼:匿名用户

#include

#include

void showbit(int a)

while (mark);

}int main(void)

5楼:匿名用户

输八进制与十六进制用printf("%x %o",a,a);就可以了

c语言从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数。

6楼:匿名用户

#include

#define max 1000

void main()

else if(flag)}}

}int func(char s)

return(n);

}另外,团idc网上有许多产品**,便宜有口碑

7楼:

#include"stdio.h"

main()

在c语言中,输入一个十进制数,将其转化为二进制数,八进制数,十六进制数,并输出(要求用函数来实现)

8楼:匿名用户

#include "stdio.h"

#include "stdlib.h"

int main()

请问用c语言编写一个十进制转换成二进制或八进制或十六进制的程序需要怎么打?

9楼:会飞的小兔子

#include

voidmain()

inttransfer(intx)

}returny;

}扩展资料c语言:整数转换十六进制数和八进制

#include

voidmain()

10楼:匿名用户

intmain()

while(b!=1);

c[j]=1;

printf("二进制为:");

for(i=j;i>=0;i--)

printf("%d",c[i]);

break;

case8:

printf("请输入一个十进制:b=");

scanf("%d",&b);

dowhile(b!=0);

printf("八进制为:");

for(i=j-1;i>=0;i--)

printf("%d",c[i]);

break;

case16:

printf("请输入一个十进制:b=");

scanf("%d",&b);

dowhile(b!=0);

printf("十六进制为:");

for(i=j-1;i>=0;i--)

printf("%d",c[i]);break;

default:printf("错误\n");}}修改过的,望采纳

求高手写c语言程序**:"从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数。"

11楼:匿名用户

#include

//转换为2进制

void showbit(int n)

printf("%d",n%2);

}//转换为8进制

void showoct(int n)

printf("%d",n%8);

}//转换为16进制

void showhex1(int n)

}void showhex(int n)

else

showhex1(n%16);

}main()

c语言 用数组实现10进制数转换为二进制,八进制,十六进制。

12楼:匿名用户

#include

#include

#include

/*该函数可以实现小于整型数据的任意进制之间转换*//*以下函数将a进制数s转换成b进制并输出*/void f(int a,int b,char s)for(i=0;t!=0;i++) /*再转换成b进制*/r[i]='\0';

s=strrev(r);

printf("%s",s);}

13楼:七世問君

你们都是一个班的么这两天减了好多这样的题,米意思

c语言里面 %d是十进制 %o是八进制 %x是十六进制 %多少是二进制

14楼:小澈

c语言中没有表示二进制的字符,但是你可以根据十进制、八进制或者十六进制转换一下。

可以利用短除法,将十进制转变成二进制,我们一般的思路是这样的,下面给出一个例子:

把20转换成二进制:

20/2=10........余数为0 最低位

10/2=5..........余数为0

5/2=2............余数为1

2/2=1............余数为0

1/2=0............余数为1 最高位

则20换成二进制后是10100

利用短除法可以轻松地将十进制转换成二进制,在编程中是这样用的,以下给出**:

扩展资料:

在做数据读写传输时最常用也最直观的莫过于十进制数,但是在不同应用场合、存储的方便在c语言开发时候也常采用二进制、八进制和十六进制存储数据。

进制是一种计数机制,对于任何一种进制,如:xx进制,就表示某一位置上的数运算时逢 xx 进一位。例如:

时间60′60′,分钟就会加 1,这就是六十进制。计算机中常用的进制有二进制、八进制、十进制、十六进制。

下面给出一个使用c语言编程实现任意进制数(2-16进制)转换为其他任意进制数(2-16进制)的小程序**:

#include

#include

#include

int tennum(char a,int b); //将输入的数字转换成10进制数

void numchange(int m, int b); //将转换好了的10进制数转换为所需进制数

int tennum(char a, int b)

return sum;

}void numchange(int m, int b)

}int main()

while (b < 2 && b > 16);

printf("请输入待转换数:");

getchar();

gets_s(a); //将输入的n进制数存放在数组a中

int m = tennum(a, b); //将输入的数字转换成十进制数

printf("请输入需要转成几进制数(2-16):");

do while (b < 2 && b > 16);

printf("%d进制数%s转换为%d进制数的结果为:",b,a,b);

numchange(m, b); //将十进制数转换为所需进制数

printf("\n");

system("pause");

return 0;}

15楼:匿名用户

c语言里面没有直接打出二进制数的格式符。

c语言中对于不同类型的数据用不同的格式字符。控制printf函数输出格式的是格式字符,printf函数中输出的格式为printf("《格式化字符串》", 《参量表》),格式化字符串由格式控制、和输出表列两部分组成,其中格式控制包含格式声明和普通字符。

格式声明由“%”和格式字符组成,如%d、%f等。它的作用是将输出的数据类型转换为指定的格式然后输出。普通字符是需要在输出时原样输出的字符。

扩展资料:

printf函数格式字符:

常用的有以下几种格式字符:

1. d格式字符。用来输出十进制整数。有以下几种用法:

(1)%d,按整型数据的实际长度输出。

(2)%md,m为指定的输出字段的宽度。

(3)%ld,输出长整型数据。

2. o格式符,以八进制整型式输出整数。

3. x格式符,以十六进制数形式输出整数。

4. u格式符,用来输出unsigned型数据,即无符号数,以十进制形式输出。

5. c格式符,用来输出一个字符。

6. s格式符,用来输出一个字符串。

7. f格式符,用来输出实数(包括单双精度),以小数形式输出。

8. e格式符,以指数形式输出实数。

9. g格式符,用来输出实数,它根据数值的大小,自动选f格式或e格式(选择输出是占宽度较小的一种),且不输出无意义的零。

10. p格式符,用于变量地址的输出。

16楼:匿名用户

c语言中没有格式说明符对应二进制形式的输出和输入,如果想以二进制形式输出某个数,可以使用自定义函数来实现。

示例:#include

void_printbinary(inta)//递归打印正二进制形式数

voidprintbinary(inta)//以二进制形式打印所有int型数

if(a<0)

_printbinary(a);

}intmain()

附:其他转换说明符

%a(%a) 浮点数、十六进制数字和p-(p-)记数法(c99)%c 字符

%d 有符号十进制整数

%f 浮点数(包括float和doulbe)%e(%e) 浮点数指数输出[e-(e-)记数法]%g(%g) 浮点数不显无意义的零"0"

%i 有符号十进制整数(与%d相同)

%u 无符号十进制整数

%o 八进制整数 e.g. 0123

%x(%x) 十六进制整数0f(0f) e.g. 0x1234%p 指针

%s 字符串

%% "%"

17楼:匿名用户

%d,%o,%x等等只不过是一种格式输出,这些都是将机器存储的二进制数字进行转化从而输出的。它只是一种输出格式。如果你像要输出二进制,你可以利用汇编语言。

18楼:匿名用户

这个........

这个没有,这个真的没有。

十六进制转二进制不是很方便嘛!

19楼:匿名用户

c中有二进制,例如:int i = 0b0110110

但是输出有些困难,有些操作系统可以写%b输出二进制数,有些只能转换成其他进制输出。

c语言。编写程序。把任意十进制整数转化为二进制数。并输出

1楼 饶磊 include void main while a 0 printf 输出的二进制 while i 0 printf d s i printf n c语言问题求教!!!编写一个程序,将任意一个十进制数转换成二进制数,按为存放在数组中,然后输出 2楼 董俊锟 你这数组只有这么长 可以把n定...

C语言中怎样区分八进制,十进制,二进制

1楼 一诺宝贝 在c语言里,整数有三种表示形式 十进制,八进制,十六进制。 其中以数字0开头,由0 7组成的数是八进制。以0x或0x开头,由0 9,a f或a f 组成是十六进制。除表示正负的符号外,以1 9开头,由0 9组成是十进制。 1 十进制 除表示正负的符号外,以1 9开头,由0 9组成。如...

使用栈,将十进制转换成二进制,八进制或十六进制

1楼 匿名用户 public class change public static string binary int a while i 0 return s public static string octonary int a while i 0 return s public static ...