首页 > 代码库 > 求dalao解答弱的疑问

求dalao解答弱的疑问

1.

#include <stdio.h>
#define maxsize 32575
typedef int SElemType;
typedef struct stack{
SElemType *base,*top;
int stacksize;
}stack;

int Initstack(stack S){
S.base = new stack[maxsize];
if(!S.base)
return -1;
S.base = S.top;
S.stacksize = maxsize;
return 0;
}
int push(stack S,SElemType e){
if(S.top -S.base == S.stacksize)
return -1;
*(S.top++) = e;
return e;
}

int pop(stack S,SElemType e){
if(S.top == S.base)
return -1;
e = *--S.top;
return 1;
}

int stackEmpty(stack S){
if(S.base == S.top)
return -1;
return 0;
}
//十进制转换为八进制

int main(int a){
Initstack(S);
stackEmpty(S);

while(a){
push(S,a%8);
a = a/8;
}
while(!stackEmpty(S)){
pop(S,e);
printf("%d",e);
}
delete S;
return 0;
}

 

 

--------------------Configuration: hello - Win32 Debug--------------------
Compiling...
hello.cpp
D:\vc2016.10.23\MyProjects\first2\hello.cpp(10) : error C2440: ‘=‘ : cannot convert from ‘struct stack *‘ to ‘int *‘
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
D:\vc2016.10.23\MyProjects\first2\hello.cpp(39) : error C2065: ‘S‘ : undeclared identifier
D:\vc2016.10.23\MyProjects\first2\hello.cpp(46) : fatal error C1903: unable to recover from previous error(s); stopping compilation
执行 cl.exe 时出错.

hello.obj - 1 error(s), 0 warning(s)

 

2.区别理解 

p= NULL

P-> next =NULL

3.邻接表 后面的链表为什么不用数组  减少循环

4.、、注意边界、特殊情况、、抽象实际图 --》 本质关系图

5.

区别

SqQueue &Q

SqQueue *Q

SqQueue Q

 

6.

什么时候使用  

-》

 

多看些例子也许会明白,特别是连个连起来都要使用的情况

 

 

7.

前、后插法建单链表为什么要带头结点

构造一个空栈,栈顶置空,是不是和不带头结点一个意思? 

8.

++i  i++  --i i--

是由很大的区别 即使是在循环条件中也是非常重要的   

注意n》 = 0   应该有否等于号    边界问题很重要

 这里循环从0开始, ++i  就没有了0,直接从下标1开始

//十进制转任意进制

#include <stdio.h>
int main(){
int i,n,r,a[2000];
while(scanf("%d,%d",&n,&r)!= EOF){
i =0;
if(n<0){
printf("-");
n = -n;
}
while(n>0){
a[i++] = n%r;
n /= r;
}
for(i -=1;i>=0;--i){
printf("%X",a[i]);
printf("\n");
}
}
return 0;
}

技术分享

 

技术分享

 

求dalao解答弱的疑问