首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。 请改正函数Crealink中指定部位的错误,使它能得出正确的结果。 注意:不要改动mam函数,不得增行或删行,也不得更改程序
给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。 请改正函数Crealink中指定部位的错误,使它能得出正确的结果。 注意:不要改动mam函数,不得增行或删行,也不得更改程序
admin
2018-09-27
57
问题
给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。
请改正函数Crealink中指定部位的错误,使它能得出正确的结果。
注意:不要改动mam函数,不得增行或删行,也不得更改程序的结构!
1 #include<stdio.h>
2 #include<stdlib.h>
3 typedef struct aa
4 { int datal
5 struct aa *next;
6 } NODE;
7 NODE *Creatlink(int n,int m)
8 {NODE *h=NULL,*p,*s;
9 int i;
10 /**********found**********/
11 p=(NODE)malloc(sizeof(NODE));
12 h=p;
13 p->next=NULL;
14 for(i=1;i<=n;i++)
15 {s=(NODE *)malloc(sizeof(NODE));
16 s->data=rand()%m;s->next=p->next;
17 p->next=s;p=p->next;
18 }
19 /**********found**********/
20 return p;
21 }
22 outlink(NODE *h)
23 { NODE *p;
24 p=h->next;
25 printf(’’\n\nTHE LIST:\n\n HEAD’’);
26 while(p)
27 {printf(’’->%d’’,p->data);
28 p=p->next;
29 }
30 printf(’’\n’’);}
31 main()
32 { NODE *head;
33 head=Creatlink(8,22);
34 outlink(head);}
选项
答案
(1)p=(NODE*)malloc(sizeof(NODE)); (2)return h;
解析
该题中函数功能是创建带头结点的单向链表。从已给定源程序的main主函数开始入手,首先通过“head=Creatlink(8,22);”语句调用Creatlink函数生成单向链表,然后“outlink(head);”输出该链表。
(1)“p=(NODE)malloc(sizeof(NODE));”第一标识,maclloc函数的返回类型是void*类型,表示未确定类型的指针,因此,需要指针类型转换,而“(NODE)”不是指针类型,故第一标识下应改成“p=(NODE*)malloc(sizeof(NODE));”。
(2)第二个标识下,最后将单链表返回,应该是返回头指针h指向的链表,而不是其中的一个节点p,所以“return p;”应该改为“return h;”。
转载请注明原文地址:https://www.kaotiyun.com/show/x8xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序main(){inti,j,x=0;for(i=0;i<2;i++){x++;for(j=0;j<=3;j++){if(j%2)continue;x++;}x++;
以下程序运行后的输出结果是______。main(){intx=0210;printf("%x\n",x);}
程序设计方法要求在程序设计过程中,()。
数据的存储结构是指
以下程序运行后的输出结果是()。main(){inta=3,b=4,c=5,t=99;if(b<a&&a<C)t=a;a=c;c=t;if(a<c&&b<C)t=b;b=a;a=t;printf(
以下程序运行后的输出结果是()。main(){inta,b,c;a=10;b=20;c=(a/b<1)&&(a%b<1);printf("%d%d%d\n",a,b,C);}
有以下程序 main() {int x[3][2]={0},i; for(i=0;i<3;i++) scanf("%d",x[i]); printf("%3d%3d%3d\n",x[0]
以下关于C语言数据类型的叙述中正确的是()。
对于长度为n的顺序存储的线性表,当随机插入和删除一个元素时,需平均移动元素的个数为【】。
随机试题
组织对成员做出决策或处理问题所应遵循的行动方针的一般规定是()
需要时用,仅在12小时内有效,仅用一次的外文缩写是( )。
下列属于固定或持续增长的股利政策的优点的是()。
下列选项中,属于房地产行政法规的有()。
推行限额设计时,施工图设计阶段的依据是()。
我国第一大发债主体是()。
行政主体向对方收取排污费的行为在性质上属于()。
法国作家莫里哀的代表作品有《无病呻吟》《伪君子》《吝啬鬼》《唐璜》。()
已知3个字符为:a、Z和8,按它们的ASCII码值升序排序,结果是
DearSirorMadam,Manythanksforyourletter.Wearegladtohearthatyousawouradvertisementofsilkproducts,andapp
最新回复
(
0
)