首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也
admin
2017-02-24
34
问题
下列给定程序中函数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全国计算机二级
相关试题推荐
下列关于栈的描述中错误的是()。
以下程序运行后的输出结果是______。structNODE{inthum;structNODE*next;};main(){structNODEs[3]={{1,’\0’},{2,’\0’},{3,’\0’}},*p,*q
下列软件系统结构图的宽度为______。
已定义下列函数:intfun(int*p){return*p;)fun函数返回值是()。
有以下程序#include<string.h>main(){charp[20]={’a’,’b’,’c’,’d’},q[]="abc",r[]="abcde";strcat(p,r);strcpy(p+strlen(q),
有以下程序#include<stdio.h>main(){intc;while((c=getchar())!=’\n’){switch(c-’2’){case0:case1:pu
若有说明:int*p,m=5,n;,以下正确的程序段是
C语言规定,在一个源程序中,main函数的位置
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
下面程序的运行结果是【】。#include#defineSIZE12main(){chars[SIZE];intI;for(I=0;I
随机试题
女,50岁,中腹部疼痛12小时,扩散至全腹2小时。查体:右下腹部有压痛,反跳痛及肌紧张,腹部平片无异常,血化验:白细胞21×109/L,中性粒细胞87%,尿中红细胞3~4个/HP,首先考虑的诊断是
A、贫血和出血程度一致B、贫血和出血程度不一致C、有贫血而无出血D、有出血而无贫血E、无出血亦无贫血特发性血小板减少性紫癜
根据《安全生产许可证条例》的规定,中央直属煤矿企业安全生产许可证的颁发和管理由( )负责。
Windows2000是一个32位的操作系统。 ( )
下列选项中,不属于国家预算作用的是()。
行政主体在实施行政行为时,有多种可供选择的手段可以达到行政目的,行政主体应该尽可能采取对相对人损害最小的手段。该表述体现了()的要求。
下列不属于1994年实施分税制财政管理体制改革的指导思想的是()。
如果一个企业的领导者是风险偏好者,那么其对永久性流动资产的融资政策可能会采用短期资金来源。()
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明IntSet是一个用于表示正整数集合的类。IntSet的成员函数Intersection的功能是求当前集合与另一个集合的交集。请完成成员函数Intersection。在mai
Thereareabout105malesbornforevery100females,butthis(36)______dropstonearbalanceattheageofmaturity,andamon
最新回复
(
0
)