第一范文网 - 专业文章范例文档资料分享平台

计算机软件练习题汇总

来源:用户分享 时间:2025/5/21 5:50:36 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

last=8;

在L2表的存储结构体变量中,计算前:

data[0]=2,data[1]=4,data[2]=6,data[3]=8 last=3

待完成的算法如下:

void MergeList(SequenList *L1,Sequenlist *L2)

{/*算法进入时:L1指向第一个线性表的结构体变量

L2指向第二个线性表的结构体变量

算法退出后:L1指向第一个线性表的结构体变量,其内容为合并后的表。

L2指向第二个线性表的结构体变量,其内容未变。

*/

int i,j; /*分别表示第一个表及第二个表的当前位置指示器*/ int k; /*循环控制变量*/

int n1,n2; /*分别用于存放表L1及表L2的长度*/ DataType x; /*存放从表L2中读出的数据元素*/ n1=L1->last+1; n2=L2->last+1; i=L1->last+1; j=0;

for(k=0;k< ;k++) {

x= ; L1->data[i]=x; i++; j++; }

=n1+n2-1; return; }

开始 算法流程图:

n1<--表1的长度

n2<--表2的长度

i=表1的最后元素的下一空位置

j=表2的第一个元素位置

k=0

n k

y x<--表2的data[j]

表1的data[i]<--x 退出

i<--i+1

j<--j+1 k<--k+1

3. 阅读下面的程序,绘制出主函数main( )的程序流程图,并说明本程序实现的功能。

#define maxsize 30 #define NULL -1

typedef char datatype; typedef struct stack {

datatype elements[maxsize]; int top; } S;

void IniStack(S *s) {

s->top=-1; return;

表1的last<--n1+n2-1 }

int Push(S *s,datatype ch) {

if(s->top==maxsize-1) {

printf(\return NULL; } else {

s->top++;

s->elements[s->top]=ch; return(1); }

}

int Pop(S *s) {

if(s->top<0) {

printf(\return NULL; } else {

s->top--;

return(s->top+1); }

}

main() {

char ch1; S *s;

int f1=f2=1;

s=malloc(sizeof(S)); IniStack(s);

scanf(\while(ch1!='$') {

if(ch1=='(') f1=Push(s,ch1); if(ch1==')') f2=Pop(s); scanf(\}

if(s->top==-1&&f1!=-1&&f2!=-1) printf(\else printf(\getch(); }

4. 阅读下面的算法程序,绘制出算法流程图,并说明本算法程序实现的功能。

#define NULL 0 typedef int datatype; typedef struct node { datatype data; struct node *next;

} linklist;

INSERT(linklist *L, datatype x) { linklist *p,*q, *s;

s=(linklist *)malloc(sizeof(linklist)); s->data=x; p=L;

q=L->next;

while((q->datanext!=NULL)) { p=q; q=q->next; } if(q->next==NULL) {

q->next=s; s->next=NULL; } else {

p->next=s; s->next=q; } }

5. 下面的自定义类型SeqQueue表示循环队列的一种顺序存储结构实现方法,(1)请将相

关的入队和出队运算(操作)函数填写完整;(2)写出测试程序的执行结果;(3)给程序加分析注释。

/*----文件myqueue.h的内容如下----*/ #define MaxLength 1024 typedef int datatype; typedef struct sequeue{

datatype data[MaxLength]; int front,rear; }SeqQueue;

void SETNULLQS(SeqQueue *p)

{

if(p==NULL) return; else {

p->front=MaxLength-1; p->rear=MaxLength-1; }

return;

}

int ENQUEUEQS(SeqQueue *p, datatype x) {

int tail;

if(p->front== (p->rear+1) ){

printf(“\\n队已经满啦!\\n”); return (0); }

搜索更多关于: 计算机软件练习题汇总 的文档
计算机软件练习题汇总.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1fki28oysv00kc51zttr_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top