实验项目名称:10进制转换成16进制
一、实验目的(本次试验涉及并要求掌握的主要知识点)
1.熟悉对栈的一些基本操作和具体的函数定义;2..定义栈,编程
实现相关的操作
二、实验环境(实验室用的硬件平台、工具及相关软件等)
PC+Windows7+VC6.0/VS2012-C#
三、实验内容与实验步骤(包括内容简述、配置和操作要点、原理应用分析、算法设计思想、流程图及具体实验步骤,代码可作为附件)
1、实验内容
编程解决如下问题:
将任意10进制转换成16进制
2、实验步骤
(一)
⑴分析问题
采用堆栈来进行转换
⑵拟定求解思路
先将任意10进制除以10取余数,把得到的余数再转换成字符送入堆栈中,如果大于10的余数 ,则按A,B,C,D,E,F存入堆栈中。最后将堆栈中的数按字符形式输出
(二)参考代码:
#include<stdio.h>
#include<stdlib.h>
typedef
struct tmp{
unsigned int data;
struct tmp *next;
}LinkSTACK;
LinkSTACK *head=NULL,*p=NULL;
void initStack(int x)
{
while(x)
{
//1)建立新节点,并初始化成员
p=(LinkSTACK *)malloc(sizeof(LinkSTACK));
p->data=x%16;