首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也
admin
2017-02-24
56
问题
下列给定程序中函数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全国计算机二级
相关试题推荐
下列关于栈的描述中错误的是()。
下列程序的输出结果是()。#include<stdio.h>voidp(int*x){printf("%d",++*x);}voidmain(){inty=3;p(&y);}
在数据库设计中,将E-R图转换为关系模式的过程属于()。
有以下程序#include<stdio.h>main(){FILE*fp;inti=20,j=30,k,n;fp=fopen("d1.dat","w");fprintf(fp,"%d\n",i;fprintf(f
以下程序的输出结果是main(){intc=35;printf("%d\n",c&c);}
若执行下面的程序时,从键盘输入5和2,则输出结果是main(){inta,b,k;scanf("%d,%d",&a,&b);k=a;if(a<b)k=a%b;elsek=b%a;printf("
C语言规定,在一个源程序中,main函数的位置
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
以下程序的输出结果是【】。#includevoidswap(int*a,int*b){int*t;t=a;a=b;b=t;}main(){inti=3,j=5,*p=&i,
设有如下定义:structsk{intn;floatx;}data,*p;若要使p指向data中的n域,正确的赋值语句是
随机试题
制冷压缩机轴封不得漏油量过大,正常情况()不得超过一滴。
在Word2003的编辑状态下,操作的对象经常是被选择的内容,若鼠标在某行行首的左边,则选择光标所在行的操作是______。
下列不会导致梗死的是
依据《企业所得税法》规定,下列对企业收入扣除的说法不正确的是哪些选项?
卡尔·马克思说:“法官是法律世界的国王,法官除了法律没有别的上司。”对于这句话,下列哪一理解是正确的?(2015年卷一第14题)
常规清收包括()等方式。
全面推进依法治国的重大任务包括()。
苏联从北面构成对中国的威胁主要是通过()。
OnSaturday,BexarCountyDigitalLibrary—a$2.4million,4,000-square-footspacelocatedonthesouthsideofSanAntonio—opens
Innovation,theeffectiverecipeofprogress,hasalwayscostpeopletheirjobs.Overthepast30yearsthedigitalrevolutionh
最新回复
(
0
)