分析:
二进制数是计算机数据的储存形式,它是由一串0和1组成的,每个二进制数转换成相对应的十进制数方法如下:
代码实现:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define OK 1
#define DEFEAT 0
#define STACK_SIZE 8
typedef char ElemType;
typedef int Status;
typedef struct stack
{
ElemType *top;
ElemType *base;
int sqStackSize;
} sqStack;
void BinToDec(sqStack *stack);
Status stackInit(sqStack *stack);
Status destroyStack(sqStack *stack);
void Push(sqStack *stack, char c);
// 初始化一个容量为8的栈
Status stackInit(sqStack *stack)
{
stack->base = (ElemType *)malloc(STACK_SIZE * sizeof(ElemType));
if (!stack->base)
{
return DEFEAT;
}
stack->top = stack->base;
stack-