//栈的实现

#include <stdio.h>
#define MAX 100
#define Elemtype int

struct zhan


{
Elemtype sta[MAX];
int top;
};
typedef struct zhan Stack;

void InitStack(Stack &st)


{
st.top = 0 ;
}

void Push(Stack &st,Elemtype e)


{
if(st.top>=MAX)
return;
else

{
st.top ++;
st.sta[st.top] = e ;
}
}

bool Pop(Stack &st)


{
if(st.top==0)
return false;
else

{
return true;
st.top --;
}
}

Elemtype GetTop(Stack &st)


{

/**//* if(st.top==0)
return */
return st.sta[st.top];
}

bool EmptyStack(Stack &st)


{
if(st.top==0)
return true;
else
return false;
}

void main()


{
}
1
#include <stdio.h>
2
3
struct StuGrade
4

{
5
int num;
6
int mark;
7
};
8
9
void main()
10

{
11
struct StuGrade group1[4]=
{
{1,70},
{2,85},
{3,75},
{4,90}},group2[4]=
{
{5,60},
{6,80},
{7,76},
{8,50}};
12
printf("打印成绩:\n");
13
for(int i=0;i<4;i++)
14
{
15
printf("学好:%d,成绩为:%d\n",group1[i].num,group1[i].mark);
16
printf("学好:%d,成绩为:%d\n",group2[i].num,group2[i].mark);
17
}
18
}
结构体的类型名是struct list ;struct只是声明结构体需要的关键字。 如果你要定义一个结构体变量 你就可以 :结构体类型 变量名
如:struct list student;
你是不是觉得写struct list 觉得很麻烦?
那你就可以把struct list起个别名;就是绰号
可以这样
struct list{
int a;
char c;
stuct list *next;
};
typedef struct list A;
那么你的A student; 就等同与 struct list student;
。
当然你也可以在声明一个结构体的时候给它起别名
typedef struct list{
int a;
char c;
struct list *next;
}A;
//队列的实现 , 只有一端进行插入,一端进行删除,允许插入的一端称为队尾,允许删除的一端称为队头。

#include <stdio.h>

#define MAX 100
#define Elemtype int
struct sequence


{
Elemtype seq[MAX];
int top;
int rear;
};
typedef struct sequence Sequence;

void InitQueue(Sequence &queue)


{
queue.top=queue.rear=0;
}

void EnQueue(Sequence &queue,Elemtype e)


{
if(queue.rear==MAX-1)
return;
else

{
queue.rear++;
queue.seq[queue.rear]=e;
}
}
void DlQueue(Sequence &queue)


{
if(queue.rear==queue.top)
return;
else

{
queue.top++;
}
}
Elemtype GetHead(Sequence &queue)


{
if(queue.rear==queue.top)
return NULL;
else
return queue.seq[queue.top];
}
void main()


{

}
上传一个比较有用的ppt
link
队空:Q.front =Q. rear
队满: Q.front =(Q.rear + 1) % maxSize
入队: Q.rear = (Q.rear + 1) % maxSize
出队: Q.front = (front + 1) % maxSize;
求队长:(Q.rear-Q.front+maxSize)%maxSize