栈的应用的意义?
把输入的任何一个十进制数转换为对应的八进制数?算法可以这样写.1)
void conversion()
{
int a[5],i=0,m,j;
printf("please input a integer:");
scanf("%d",&m);
while(m>0)
{
a[i]=m%8;
m/=8;
i++
}
printf("\n");
for(j=i;i>=0;i--)
printf("%d",a[i]);
}
2)
void conversion()
{
Stack st;
st.top=-1;
int e,m;
scanf("%d",&m);
while(m)
{
push(st,m%8);
m=m/8;
}
while(!sempth(st))
{
pop(st,e);
printf("%d",e);
}
}
上述两种都可以吧!不明白的是.第一种这么简单.为什么还要用第二种呢?而且第二种看起来有点复杂,要调用定义的函数.这里的栈的应用有什么重要的意义?谢谢.