首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #
给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #
admin
2019-09-02
50
问题
给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。
请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
#include<stdlib.h>
typedef struct aa
{ int data;
struct aa *next ;
}NODE;
NODE*Creatlink(int n,int m)
{NODE*h=NULL,*p,*s;
int i;
/**********found**********/
p=(NODE)malloc(sizeof(NODE));
h=p;
p->next=NULL;
for(i=1;i<=n;i++)
{s=(NODE*)malloc(sizeof(NODE));
s->data=rand()%m;s->next=p->next;
p->next=s;p=p->next;
}
/**********found**********/
return p;
}
outlink(NODE*h)
fNODE*p;
p=h->next;
printf("\n\nTHE LIST:\n\n HEAD");
while(p)
{printf("->%d",p->data);
p=p->next;
}
printf("\n");}
main()
{NODE*head;
head=Creatlink(8,22);
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*)malloe(sizeof(NODE));”。
(2)第二个标识下,最后将单链表返回,应该是返回头指针h指向的链表,而不是其中的一个节点p,所以“return p;”应该改为“return h;”。
转载请注明原文地址:https://www.kaotiyun.com/show/zKRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
给定程序MODI1.C中函数fun的功能是:判断ch中的字符是否与s仃所指串中的某个字符相同;若相同,什么也不做,若不同,则将其插在串的最后。请改正程序中的错误,使它能进行正确的操作。注意:不要改动main函数,不得增行或删行,也不得更
以下选项中关于C语言常量的叙述错误的是
有以下程序#includevoidfun(char*a,char*b){while(*a==’*’)a++;while(*b=*a){b++;a++;}}main(){char*s="*a*b*",t[
若有以下程序#includevoidsp(int*a){intb=2;a=&b;*a=*a*2;printf("%d,",*a);}main(){intk=3,*p=&k;sp(p);printf("%d,%d\
在软件开发中,需求分析阶段产生的主要文档是
以下叙述中正确的是
以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是
if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是
在一个C源程序中所定义的全局变量,其作用域为
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面属于定义阶段任务的是
随机试题
齿轮在轴上固定,当要求配合过盈量很大时,应采用()。
具有热电偶冷端温度自动补偿功能的显示仪表,当输入信号短接时,指示为0℃。
正常人每日通过肾小球滤过的原尿约为
高层建筑中直径为50mm的给水镀锌钢管应采用()。
金融机构通过第三方识别客户身份,而第三方未采取符合《反洗钱法》要求的客户身份识别措施的,由()承担未履行客户身份识别义务的责任。(2008年上半年)
关于组距,下列描述正确的是()。
变式是指()使学生逐渐理解概念的真正含义。
在我国,公安机关专政职能与民主职能的区别主要表现在( )。
设A为三阶矩阵,λ1,λ2,λ3是A的三个不同的特征值,对应的特征向量分别为α1,α2,α3,令β=α1+α2+α3。证明:向量组β,Aβ,A2β线性无关;
A、他们不认识B、他们是朋友C、他们是一起来的A
最新回复
(
0
)