首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也
下列给定程序中函数Creatlink的功能是:创建带头结点的单向链表,并为各结点数据域赋0到m—1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:部分源程序在文件NODI1.C中,不要改动main函数,不得增行或删行,也
admin
2017-02-24
55
问题
下列给定程序中函数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://www.kaotiyun.com/show/XMDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是()。#include<stdio.h>main(){inta=4;printf("%d\n",(a+=a-=a*a));}
下面程序的运行结果是______。#include<stdio.h>intf(inta[],intn){if(n>1)returna[0]+f(a+1,n-1);elsereturna[0];}main(){intaa[10]=
下列软件系统结构图的宽度为______。
下列叙述中错误的是()。
下列程序的运行结果为()。#include<stdio.h>voidabc(char*str){inta,b,i,j;for(i=j=0;str[i]!=’\0’;i++)if(str[i]!=’a’)str[j++]=str[j];
有以下程序段,且变量已正确定义和赋值for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1));printf("s=%f\n\n",s);请填空,使下面程序段的功能与之完全相同S=1.0;k=1;while([8]
以下程序的输出结果是main(){intc=35;printf("%d\n",c&c);}
有以下程序main(){intx=0,y=0,i;for(i=1;++i){if(i%2==0){x++;continue;}if(i%5==0){y++;break;}}printf("
有以下程序#include<stdio.h>main(){intc;while((c=getchar())!=’\n’){switch(c-’2’){case0:case1:pu
已有定义:charc=′′;inta=1,b;(此处c的初值为空格字符),执行b=!c&&a;后b的值为【】。
随机试题
非处方药物的遴选原则是安全有效、疗效确切、质量稳定和使用方便,属于使用方便的含义是
患者,因腰部用力不当,证见腰部刺痛,俯仰不便,局部疼痛拒按,舌有瘀斑。方选
心理学的研究对象是人的
在科目汇总表账务处理程序下,应设置()等。
甲公司是一家国有大型企业,在经营过程中发生了以下事件:(1)2013年3月10日,公司会计科会同档案科对单位会计档案进行了清理,编制了会计档案销毁清册,将保管期已满的会计档案按规定程序全部销毁,其中包括一些保管期满但尚未结清债权债务的原始凭证。
进口环节增值税的组成计税价格为:
假设某股票1个月后的股价增长率服从均值为5%,标准差为0.03的正态分布,则1个月后该股票的股价增长率落在()区间的概率约为68%。
白老师在班会上声情并茂地讲述了钱学森历尽艰辛回到祖国、投身科学研究事业的故事,激发起学生强烈的爱国热情。这种班会活动类型属于()。
Afterhisjourneyfromabroad,RichardJonesreturnedhome,______.
America’sWorstSurpriseDecember7,1941wasoneoftheworstdaysinAmericanhistory.NearlyallAmericanswhoareolden
最新回复
(
0
)