|
5鱼币
为什么结果不会显示呢?
- #include<iostream.h>
- #define MaxSize 20
- typedef struct{
- int data[MaxSize];
- int top;
- }SeqStack; //定义栈
- /*********初始化栈************/
- SeqStack *Init_SeqStack()
- {
- SeqStack *s;
- s = new SeqStack;
- if(!s)
- return NULL;
- else
- {
- s->top = -1;
- return s;
- }
- }
- /***********栈空判断************/
- int Empty_SeqStack(SeqStack *s)
- {
- if (s->top = -1)
- return 1;
- else
- return 0;
- }
- /*************入栈**************/
- int Push_SeqStack(SeqStack *s, int x)
- {
- if(s->top == MaxSize - 1)
- return 0;
-
- else
- {
- s->top++;
- s -> data[s->top] = x;
- return 1;
- }
- }
- /***************出栈*************/
- int Pop_SeqStack(SeqStack *s, int *x)
- {
- if(Empty_SeqStack(s))
- return 0;
- else
- {
- *x = s->data[s->top];
- s->top--;
- return 1;
- }
- }
- /*************十进制转八进制*********************/
- void conversion(int N, int r)
- {
- SeqStack *s1;
- int x;
- s1 = Init_SeqStack();
- while(N)
- {
- Push_SeqStack(s1,N%r); //将余数一直入栈
- N = N/r;
- }
- while(!Empty_SeqStack(s1))
- {
- Pop_SeqStack(s1,&x);
- cout << x;
- }
-
- }
- void main()
- {
- int N = 3467, r = 8;
- conversion(N, r);
- }
复制代码
|
|