首页 > 大学专科> 电子信息
题目内容 (请给出正确答案)
[主观题]

以下程序建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输

入结束(键表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。 include<stdio.h> struct list{ int data;struct list*next;}; struct list*creatlist() { struct list*p,*q,*ph;int a;ph=(struct list*)malloc(sizeof(struct list)); p=q=ph;printf("Input an integer number;entre-1 to end:\n"); scanf("%d",&a); while(a!=-1) { p=(struct list*)malloc(sizeof(struct list)); 【 】=a;q->next=p;【 】=p;scanf("%d",&a);} p->next=\0;return(ph);} main() {struct list * head;head=creatlist();}

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“以下程序建立一个带有头结点的单向链表,链表结点中的数据通过键…”相关的问题
第1题
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时
,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。 include <stdio.h> struct list { int data;struct list *next;}; struct list *creatlist() { struct list *p,*q,*ph;int a;ph=(struct list*)malloc(sizeof(struct list)); p=q=ph;printf("Input an integer number;entre-1 to end:\n"); scanf("%d",&a); while(a!=-1) { p=(struct list*)malloc(sizeof(struct list)); [14] =a;q->next=p; [15] =p;scanf("%d",&a);} p->next=\0;return(ph);} main() {stuct list * head;head=creatlist();}

点击查看答案
第2题
以下程序建立了一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输人数据为-1时,表示
输入结束(链表头结点的data域不放数据,表空的条件是ph->next=NULL). include<stdio.h> struct list { int datd;struct list * next;}; 【 】creatlist() {struct list * p,*q,*ph; int a; ph= (struct list*)malloc(sizeof(struct list)); p=q=ph; printf("Input an integer number,enter-1 to end:\n"); scanf("%d",&a); while(a!=-1) { p=(struct list * )malloc(sizeof(struct list)); p->data=a; q->next=p; 【 】=p; scanf("%d",&a); } p->next=\0; return(ph); } main() { struct list head; head=creatlist(); }

点击查看答案
第3题
以下函数creat用来建立一个带头结点的单向链表,新产生的结点是插在链表头的 末尾。单向链表的头
指针作为函数值返回。请填空。 include<stdio.h> struct list {char data; struct list * next; }; struct list * creat; {struct list * h,* p,* q; char ch; h=(【 】 )malloc (sizeof(struct list)); p=q=h; ch=getchar(); while(ch!=?) {p=(【 】)mallco(sizeof(struct list)); p->data=ch; q->next=p; q=p; ch=getchar(); } p->next=\0; 【 】; }

点击查看答案
第4题
下面程序中函数creat用于建立一个带头结点的单向链表,新产生的结点总是插在链表的末尾,单向链表
的头指针作为函数值返回。将程序补充完整。 include<stdiao.h> struct list {char data; struct list * next;}; struct list * creat() { struct list *h,*p,*q; char ch; h=【 】malloc(sizeof(struct list)); p=q=h;ch=getchar(); while(ch!=?) { p=【 】malloc(sizeof(struct list)); p->data=ch;q->next=p;q=p;ch=getchar(); } p->next=\0; 【 】; }

点击查看答案
第5题
以下程序实现带有头结点的单链表的建立,链表中每个结点包含数据域data(字符型)和指针域next,所建

以下程序实现带有头结点的单链表的建立,链表中每个结点包含数据域data(字符型)和指针域next,所建立链表的头指针由参数phd传回调用程序。在空格处填入正确内容。 include<stdio.h> include<stdlib, h> struct node { char data; struct node * next; }; void creatlist(【 】) { char ch; struct node * s, * r; * phd= malloc(sizeof (struct node)); r= * phd; ch=getchar(); while(ch !=@) { s = malloc(sizeof(struct node)); s->data=ch; r->next=s; r=s; ch= getchar(); }; r->next=【 】; } main () { struct node * head; head= NULL; creatlist(【 】) }

点击查看答案
第6题
以下函数creat用来建立一个带头结点的单向链表,新产生的结点总是插在链表的末尾。单向链表的头指
针作为函数值返回。请填空。 include <stdio.h> struct list { char dara; struct list *next; }; struct list *creat() { struct list *h,*p,*q; char ch; h= (struct list (*) malloc (sizeof (struct list)); ______; ch=getchar(); while(ch!=?) { p=(struct list*) malloc) sizeof (struct list)); p->data=ch; ______; q=p; ch=getchar(); } p->next=\0; ______: }

点击查看答案
第7题
设线性表为(1,13,16,18) ,以下程序用说明结构变量的方法建立头指针为head,尾结,点为18的单

设线性表为(1,13,16,18) ,以下程序用说明结构变量的方法建立头指针为head,尾结,点为18的单向循环链表,并输出链表中各结点中的数据。

#define NULL 0

Void main()

{

NODE a,b,c,d,*head,*p;

a.data=1;

b.data=13;

c.data=16;

d.data=18; /* d是尾结点*/

head=();

a.next=&b;

d.data=18; /* d是尾结点*/

head=();

a.next=&b;

b.next=&c;

c.next=&d;

()=head; /*以上结束建立循环链表的过程*/

p=head; /* p为工作指针,准备输出链表*/

do

{

printf("%d/n",());

();

}while();

}

点击查看答案
第8题
以下程序中函数fun()的功能是构成一个如图所示的带头结点的单向链表,在结点的数据域中放入了具有

以下程序中函数fun()的功能是构成一个如图所示的带头结点的单向链表,在结点的数据域中放入了具有两个字符的字符串。函数disp的功能是显示输出该单向链表中所有结点中的字符串。请填空完成函数disp。

以下程序中函数fun()的功能是构成一个如图所示的带头结点的单向链表,在结点的数据域中放入了具有以下include <atdio.h> typedef struct node /*链表结点结构*/ { char sub[3]; struct node * next; } Node Node ~un(char s) /*建立链表*/ {......} void disp(Node * h) { Node * Ps p=h->next; while(【 】) { printf("%s\n",p->suh);p= 【 】;} } main() { Node * hd; hd = fun(); disp(hd) ;prinff(" \n" );

点击查看答案
第9题
设线性表为(16, 20,26,24),以不带头结点的单向链表存储,链表头指针为head,以下程序的功能是
设线性表为(16, 20,26,24),以不带头结点的单向链表存储,链表头指针为head,以下程序的功能是

输出链表中各结点中的数据域data。struct node { int data;struct

node *next; };

typedef struct node NODE; #define

NULL 0 void main() { NODE *head,*p; p=head;

/*p为工作指针*/ do {

printf("%d/n",

}while();}

点击查看答案
第10题
若对某线性表最常用的操作是在最后一个结点之后插入一个新结点或删除最后一个结点,要使操作时间最少,下列选项中,应选择的存储结构是()。

A.无头结点的单向链表

B.带头结点的单向链表

C.带头结点的双循环链表

D.带头结点的单循环链表

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改