教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

《数据结构》实验指导书 - 图文(5)

来源:网络收集 时间:2026-01-24
导读: void Conversion(int N) {SeqStack S; int x; S.top=-1; while(N>0) {x=N%2; push( N=N/2;} while(S.top!=-1) {pop(x); printf(\ } main() { int x; clrscr(); printf(\ scanf(\ Conversion(x); getch(); } 实验五

void Conversion(int N) {SeqStack S; int x; S.top=-1; while(N>0) {x=N%2; push(&S,x); N=N/2;}

while(S.top!=-1) {pop(&S,&x); printf(\ }

main() {

int x; clrscr();

printf(\ scanf(\ Conversion(x); getch(); }

实验五 顺序队列的基本操作

一、

实验目的:

1. 握队列的基本概念;

2. 掌握循环队列的概念和建立、入队出队方法。

二、 实验内容:

1. 队列的基本操作。

三、 实验要求:

1. 认真阅读、掌握和上机运行本实验的程序; 2. 记录程序的运行结果,并结合程序进行分析; 3. 参照示例程序,完成相应功能的C程序设计编写。

四、 五、

实验学时:2学时 实验步骤:

1. 实验准备:

(1)完成教材第四章课后编程项目的第1-3题; (2)阅读实验步骤中的函数,写出函数功能;

2. 拓展练习:阅读下列程序,写出各子函数功能和程序运行结果,再上机调试运行。 (1)队列的基本运算

void inqueue(sqqueue *q,int x)

{

if(queuefull(q))

{ printf(“queue overflow”);return;} q–>len++;

q–>data[q–>rear]=x;

q–>rear=(q–>rear+1)%queuesize;

}

int dequeue(sqqueue *q) {int temp;

if(queueempty(q))

{ printf(“queue underflow”);return;} temp=q–>data[q–>front]; q–>len--;

q–>front=(q–>front+1)%queuesize; return temp; } prin(sqqueue *q) {int I;

for(I=q->front;I!=q->rear;I++) printf(“ %d”,q->data[i]);

}

main() {squeue sq; int I; sq.len=0;

for (I=0;I<5;I++) sq.data[i]=I*I; prin(&sq);

inqueue(&sq,99); prin(&sq); dequeue(&sq); prin(&sq); }

[要求]

①写出源程序。 ②写出运行结果。

实验六 数组、字符串的基本操作

一、

实验目的:

1. 清楚一维数组、多维数组的定义格式及下标范围; 2. 学习利用数组解决简单应用问题; 3. 清楚串的定义格式;

4. 掌握串的存储结构、熟练对串的基本操作。

二、 实验内容:

1. 数组的建立和操作; 2. 串的建立和操作; 3. 字符串基本操作。

三、 实验要求:

1. 认真阅读、掌握和上机运行本实验的程序; 2. 记录程序的运行结果,并结合程序进行分析; 3. 参照示例程序,完成相应功能的C程序设计编写。

四、 五、

实验学时:2学时 实验步骤:

1. 实验准备:

(1)完成教材第五章课后编程项目的第1-3题; (2)阅读实验步骤中的函数,写出函数功能;

2. 阅读下列程序,写出各子函数功能和程序运行结果,再上机调试运行。 (1) 下面的程序重新安排数组a中的元素,请读懂这个程序;

void main() {

int a[]={2,3,-3,-5,6,-1,9,8,7,-7,-6,11}; int SIZE=sizeof(a)/sizeof(a[0]); int I=-1,j=SIZE; while(++i< --j){

while (i0)i++; while (i

int d=a[i]; a[i]=a[j]; a[j]=d; } }

for (int k=0;k

[要求]

①读懂程序,判断程序的输出,并记录下你的判断; ②实际运行程序,记录下实际的输出;

③比较判断输出和实际输出,如有不符,分析产生错误判断的原因; ④用简短的文字阐述此程序的功能;

(2) 串的模式匹配

#define m 100 typedef struct{ char ch[m]; int len; } sqstr;

void creat(sqstr *s) {

scanf(\s->len=strlen(s); }

int index(sqstr s,sqstr t) {

int i=0,j=0;

while(i

if(s.ch[i]==t.ch[j]) {i++;j++;} else {i=i-j+1;j=0;} }

if(j==t.len) return (i-j+1); else return(-1); }

main() { int a;

sqstr S,T,*s=&S,*t=&T; creat(s); creat(t);

a=index(S,T); printf(\}

[要求]

①写出源程序。 ②写出运行结果。

…… 此处隐藏:149字,全部文档内容请下载后查看。喜欢就下载吧 ……
《数据结构》实验指导书 - 图文(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/608417.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)