首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也
admin
2017-02-24
52
问题
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。
请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。
注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include<stdio.h>
2 #include<stdlib.h>
3 typedef strucL aa
4 {int data;
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;
17 s->next=p->nexL,
18 p->next=s;p=p->next;
19 }
20 /*********found*********/
21 return p;
22 }
23 outlink(NODE*h)
24 {NODE*p;
25 P=h->next;
26 printf("\n\nTHE LIST:\n\nHEAD");
27 while(P)
28 {printf("->%d",p->data);
29 p=p->next;
30 }
31 printf("\n");
32 }
33 main()
34 {NODE*head;
35 head=Creatlink(8,22);
36 outlink(head);
37 }
选项
答案
(1)p=(NODE*)malloc(sizeof(NODE)); (2)return h;
解析
(1)由变量定义可知p为指向结点的指针。指向刚分配的结构指针,所以应改为p=(NODE*)malloc(sizeof(NODE))。
(2)在动态分配内存的下一行语句是,使用临时结构指针变量h保存p指针的初始位置,最后返回不能使用p,是因为p的位置已经发生了变化,所以应改为return h。
转载请注明原文地址:https://kaotiyun.com/show/XMDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有下列程序:main(){intx=5;do{printf("%d",x-=4);}while(!(--X));}程序的输出结果是()。
以下程序的功能是输入任意整数给n后,输出n行由大写字母A开始构成的三角形字符阵列图形。例如,输入整数5时(注意:n不得大于10),程序运行结果如下:ABCDEFGHIJKLMNO请填空完成该程序。main(){in
下列二维数组初始化语句中,不正确的是()。
下列程序的输出结果是()。#include<stdio.h>main(){iuta=2,b=3,p;p=f(a,B)printf("%d",p);}intf(a,b){intc;if(a>B)c=1;e1Seif(a==
已知i、j、k为血型变量,若要从键盘输入2、3、4<CR>,使i、j、k的值分别为2、3、4,下列正确的输入语句是()。
现有如下程序段#include"stdio.h"main(){inta[5][6]={23,3,65,21,6,78,28,5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
设p1和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是
若变量均已正确定义并赋值,以下合法的C语言赋值语句是
随机试题
根据电子控制悬架是否包含动力源,将其分为_______。
尊重病人的自主权,下述提法中错误的是
企事业单位的内部监督是指形成内外部约束机制,防范舞弊和经营风险,支持并督促会计人员遵循会计职业道德,依法开展会计工作。()
一对夫妻欲离婚,下列各项属于他们夫妻共同财产的是()。
下列关于建设项目财务评价的说法中,正确的是()。
已知某投资项目的项目计算期是8年,资金于建设起点一次投入,当年完工并投产,若投产后每年的现金净流量相等,经预计该项目包括建设期的静态投资回收期是2.5年,则按内含报酬率确定的年金现值系数是()。
下列有关可供出售金融资产会计处理的表述中,正确的有()。
税务机关需要将空白发票调出查验时,应当开具收据;经查无问题的,应当及时返还。()
自我提问是由学习者自己提出问题,促使自己来思考和回忆的一种方法。()
Onemorning,Iwaswaitingatthebusstop,worriedabout【K1】______(be)lateforschool.Thereweremanypeoplewaitingatthe
最新回复
(
0
)