用C语言编程,输入一个十进制正整数,输出其对应的十六进制整数。

 我来答
果果就是爱生活
高能答主

2020-04-20 · 专注生活教育知识分享
果果就是爱生活
采纳数:2072 获赞数:272205

向TA提问 私信TA
展开全部

#include<stdio.h>

int main()

{

int a,*p;

p=&a;

scanf("%d",p);

printf("%x\n",*p);

return 0;

}

扩展资料:    

十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。

十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

ruanban
2008-07-03
知道答主
回答量:20
采纳率:0%
帮助的人:0
展开全部
不用系统的函数,用栈实现

// test.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <stdio.h>
#include <malloc.h>

struct stack
{
char* base;
char* top;
int length;
};

void InitStack(struct stack *p)
{
p->base=(char*)malloc(100);
p->top=p->base;
*(p->top)=0;
p->length=0;
}

bool push(struct stack *p,char a)
{
if(p->length >=100) return false;
*(p->top) = a;
p->top++;
*(p->top)=0;
p->length++;
return true;
}

bool pop(struct stack *p)
{
if(p->length <= 0) return false;
p->top--;
*(p->top)=0;
p->length--;
return true;
}

char Get_Top(struct stack *p)
{
if(p->length <= 0) return false;
return *(p->top-1);
}
int main(int argc, char* argv[])
{
struct stack MyStrack;
InitStack(&MyStrack);
int a;
printf("请输入一个整数:");
scanf("%d",&a);
while(a)
{
int tempint=a%16;
char temp = tempint>9 ? 'A'+tempint-10:'0'+tempint;
push(&MyStrack,temp);
a=a/16;
}

int len=MyStrack.length;
printf("转化为十六进制为:");
for(int i=0;i<len;i++)
{
char temp=Get_Top(&MyStrack);
if(!temp) return 0;
pop(&MyStrack);
printf("%c",temp);
}
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
素水云儿
2008-07-03 · TA获得超过149个赞
知道小有建树答主
回答量:317
采纳率:0%
帮助的人:0
展开全部
#include<stdio.h>
#include<stdlib.h>
void main(){
int a;
char b[10];
scanf("%d",&a);
itoa(a,b,16);
printf("%s",b);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
礼落派田鸡1j
2008-07-03 · TA获得超过169个赞
知道小有建树答主
回答量:149
采纳率:0%
帮助的人:154万
展开全部
运行结果
a=1000

a=3e8h
Press any key to continue

程序
//VC6.0
#include "stdio.h"

void main()
{
int a;

printf("a=");
scanf("%d",&a);
printf("\na=%xh\n",a);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式