📄 2.21.cpp
字号:
//#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#define OK 1
#define OVERFLOW -2
#define LIST_INIT_SIZE 100 //现行表存储空间的初始分配量
#define LISTINCREMENT 10 //现行表存储空间的分配量
#define ElemType int
typedef int Status;
typedef struct{
int * elem; //存储空间基址
int length; //当前长度
int listsize; //当前分配的存储容量(以sizeof(ElemType)为单位)
}SqList;
Status InitList(SqList *L)/* 操作结果:构造一个空的顺序线性表*/
{
(*L).elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));
if(!(*L).elem) exit(OVERFLOW); /* 存储分配失败*/
(*L).length=0; /* 空表长度为*/
(*L).listsize=LIST_INIT_SIZE; /* 初始存储容量*/
return OK;
}
Status ReverseList(SqList *L){
int i,t;
(*L).elem[0]=1;
(*L).elem[1]=2;
(*L).elem[2]=3;
(*L).elem[3]=4;
(*L).elem[4]=5;
(*L).elem[5]=6;
(*L).length=6; //初始化线性表各元素
printf("置换前输出表中数:\n");
for(i=0;i<(*L).length;i++)
if (i<(*L).length-1)
printf("%d->",(*L).elem[i]);
else
printf("%d",(*L).elem[i]); //输出置换前各元素
for(i=0;i<=(*L).length/2;i++)
{ t=(*L).elem[i];
(*L).elem[i]=(*L).elem[(*L).length-1-i];
(*L).elem[(*L).length-1-i]=t;} //置换元素
printf("\n置换后输出表中数:\n");
for(i=0;i<(*L).length;i++)
if (i<(*L).length-1)
printf("%d->",(*L).elem[i]);
else
printf("%d",(*L).elem[i]); //输出置换后各元素
return OK;
}
int main(SqList *p)
{
printf("线性表的逆序-21:\n");
SqList La;
InitList(&La); /* 创建空表La */
ReverseList(&La); /* 置换表中数La */
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -