C语言编程,输入十进制数输出十六进制和八进制

[复制链接]
查看11 | 回复3 | 2018-11-7 21:36:56 | 显示全部楼层 |阅读模式
#include#define N 8 void tran(int num,int k) {int arr[N],i;for (i=0;i =0;i--)switch (arr){case 10: printf("A");break;case 11: printf("B");break;case 12: printf("C");break;case 13: printf("D");break;case 14: printf("E");break;case 15: printf("F");break;default: printf("%d",arr);}printf("\n\n\n"); } int main() {int num,choo; loop:printf("请选择功能:0.退出 1.十进制转二进制 2.十进制转八进制 3.十进制转十六进制\n");scanf("%d",&choo);switch (choo){case 1:printf("请输入要转换的十进制数:");scanf("%d",&num);tran (num,2);goto loop;case 2:printf("请输入要转换的十进制数:");scanf("%d",&num);tran (num,8);goto loop;case 3:printf("请输入要转换的十进制数:");scanf("%d",&num);tran (num,16);goto loop;case 0:break;default :printf("输入有误!请重新输入!\n");goto loop;}}

拓展资料C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。(参考资料 百度百科 C语言)
回复

使用道具 举报

千问 | 2018-11-7 21:36:56 | 显示全部楼层
可以格式化输出。#includeintmain(){intn;printf("输入一个数:");scanf("%d",&n);printf("八进制:%o\n",n);printf("十六进制:%x\n",n);return0;}


回复

使用道具 举报

千问 | 2018-11-7 21:36:56 | 显示全部楼层
#include#define N 8 void tran(int num,int k) {
int arr[N],i;
for (i=0;i =0;i--)
switch (arr)
{
case 10: printf("A");break;
case 11: printf("B");break;
case 12: printf("C");break;
case 13: printf("D");break;
case 14: printf("E");break;
case 15: printf("F");break;
default: printf("%d",arr);
}
printf("\n\n\n"); } int main() {
int num,choo; loop:
printf("请选择功能:0.退出1.十进制转二进制2.十进制转八进制3.十进制转十六进制\n");
scanf("%d",&choo);
switch (choo)
{
case 1:
printf("请输入要转换的十进制数:");
scanf("%d",&num);
tran (num,2);
goto loop;
case 2:
printf("请输入要转换的十进制数:");
scanf("%d",&num);
tran (num,8);
goto loop;
case 3:
printf("请输入要转换的十进制数:");
scanf("%d",&num);
tran (num,16);
goto loop;
case 0:break;
default :
printf("输入有误!请重新输入!\n");
goto loop;
} }
回复

使用道具 举报

千问 | 2018-11-7 21:36:56 | 显示全部楼层
#include main() {int i,d,m,n; char s[8]; scanf("%d",&n); i=0; do{ m=n/8; d=n%8; s='0'+d; i++; n=m; } while(n!=0); for(i--;i>=0;i--) putchar(s); } //十进制转八进制十六进制方法类似 #includevoid main(){ int a; scanf("%d",&a); printf("%o,%x",a,a); getchar(); getchar();}参考资料:http://hi.baidu.com/camel520duck/blog/item/348ad3bf9018340d18d81f10.html本回答被提问者采纳#includevoid showbit(int n){
if(n>1){
showbit(n/2);
printf("");
}
printf("%d",n%2);}void showoct(int n){
if(n>7){
showoct(n/8);
printf("");
}
printf("%d",n%8);}void showhex(int n){
if(n>15){
showhex(n/16);
printf("");
}
printf("%d",n%16);}int main(){
int a;
printf("input a num:");
scanf("%d",&a);
showbit(a);
printf("\n");
showoct(a);
printf("\n");
showhex(a);
printf("\n");}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行