- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验 1-1 顺序表的逆置操作
程序原码
#includestdlib.h // 创建顺序表,确定元素个数,插入各个元素,逆置列表。 #includestdio.h
#includemalloc.h #define max_list_size 100 // 定义给顺序表分配空间大小 typedefstruct{ int *elem 。
int length 。
}list_node 。 //指向顺序表首地址的结构体单元
list_node L 。 // 这里使用了全局变量,在所有的函数里可以随意修改其值
int list[max_list_size] 。
void init() 。 // 初始化操作 void inversion() 。 // 倒置部分 void creat() 。 // 建表部分 void display() 。 // 显示部分
//*************
主函数 ******************
int main()
{
init() 。
creat()。
printf(\n 您输入的顺序表的结点数 : \n) 。 display() 。
inversion() 。
printf(\n 倒置顺序表的结点数 : \n)。 display() 。
//*************初始化操作分配空间******************
//*
************
初始化操作分配空间
******************
voidinit()
{
L.elem = (int *) malloc (max_list_size * sizeof(int) ) 。 if (! L.elem) {
printf( 顺序表已满 ) 。
exit(-1) 。
}
L.length = 0 。
//*************
以下为建表部分 ******************
voidcreat(){ int a, b, i 。
printf( 请输入顺序表的结点数 : ) 。 scanf(%d, a) 。
if(a=0){
printf( 顺序表个数要为正整数 ! 请重新输入 : )。 scanf(%d,a) 。
}
if( a max_list_size - 1 || a 0 )
{
printf( 分配失败 ,退出程序 ! \n) 。 exit(1) 。
}
for(i = 0 。 i != a 。 ++i)
{
printf(”请输入第%d结点的值:,i+1)。
scanf(%d, b) 。 L.elem[i] = b 。
++L.length 。
}
}
//****************以下为倒置部分**********************
//*
***************
以下为倒置部分
**********************
void inversion(){ int a, b, i 。
void inversion(){ int a, b, i 。
a = L.length 。
for(i = 1 。 i = a/2 。 i++) {
b = L.elem[i-1] 。 L.elem[i-1] = L.elem[a-i] 。 L.elem[a-i] = b 。
}
//****************以下为显示部分**********************
//*
***************
以下为显示部分
**********************
void display(){ inti 。
for(i = 1 。 i = L.length 。 ++i) printf(%d\t, L.elem[i-1]) 。 printf(\n) 。
实验1-1测试结果 输入一个正数、
7:0 12 3 4 5 6
7
:0 12 3 4 5 6 ?2222222
片? 百总J~??总 J?IL脸ItT■ .m■ **一 反r-r5ai
4Y ■ ■*■■*4+■ ■『 M T ■4■*■t■ HllilqllaH』IIa=Hil十国laQlIa
您输人的顺序表的结点数:
2G 21 22 23 24 25 26
倒置顺序表的结点数,
26 25 24 23 22 21 20
Press an9 key to continue
输入一个负数、
■JL羽点点点点 亠予醬结结第 片蓼
■J
L羽点点点点 亠予醬结结第 片蓼12 3 4 順个第羊吏甲 入费入入入 Jffis
.的的的的
5 6 7s
您输入的顺序表的结点数=
7 8
倒置顺序養的结点数=
7 6 5
ress any Ikey to continue
实验1-2单链表的逆置操作
程序原码
//创建一个单链表,确定
文档评论(0)