编写栈的定义及基本操作函数,实现输入整数n的八进制转换
本帖最后由 未来大神! 于 2021-10-13 22:44 编辑#include<stdio.h>
#include<math.h>
#define MaxSize 100
typedef struct
{
ElemType data;
int top;
} SqStack;
void InitStack(SqStack &st)
{
st.top=-1;
}
void DestoryStack(SqStck st)
{}
int Push(SqStack &st,ElemType x)
{
if (st.top==MaxSize-1)
return 0;
else
{
st.top++;
st.data=x;
return 1;
}
}
int GetTop(SqStack st,ElemType &x)
{
if(st.top==-1)
return 0;
else
{
x=st.data;
return 1;
}
}
int StackEmpty(SqStack st)
{
if(st.top==-1)
return 1;
else
return 0;
}
void main()
{
SqStack st;//定义一个顺序栈
ElemType e;
InitStack(st);
GetTop(st,e);
printf("请输入整数:n\n");
scanf("%d",&n);
int n,a,sum=0,i=0;
while(n)
{
a=n%8;
n=n/8;
sum+=a*pow(10,i);
i++;
}
printf("八进制输出为:%d\n",sum);
}
有好多错误,第一个是ElemType data;编译器显示ElemType不能定义类型,为什么?该怎样修改?
还有其他好多错误,还请大神帮忙修改。谢谢了!!!
https://user.qzone.qq.com/1164581044/311/
页:
[1]