首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll。C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改
给定程序MODll。C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改
admin
2013-04-02
39
问题
给定程序MODll。C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。
请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
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)
{NODE *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);
}
选项
答案
p=(NODE *)malloc(sizeof(NODE)); return h;
解析
(1)第一标识下“p=(NODE )malloc(sizeof(NODE));”,maclloc函数的返回类型是 void* 类型,表示未确定类型的指针,因此需要指针类型转换,而“(NODE )”不是指针类型,故第一标识下应改成“p=(NODE *)malloc(sizeof(NODE));”。
(2)第二个标识下,最后将单链表返回,应该是返回头指针h指向的链表,而不是其中的一个节点p,所以“return p;”应该改为“return h;”。
转载请注明原文地址:https://kaotiyun.com/show/0JJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块(桩模块)。其中【 】的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。
有以下程序: float f1(float n) { return n*n; } float f2(float n) { return 2*n; } main() {float(*p1)(float),(*p
有以下程序: main() {int a[]={2,4,6,8,10},y=0,x,*p; p=&a(1); for(x=1;x<3;x++) y+=p[x]; printf("%d\n",y); } 程序运行
有以下程序: #include <stdio.h> main() {char c1=’1’,c2=’2’; c1=getchar();c2=getchar();putchar(c1);putchar(c2); }
有以下程序: #define f(x)(x*x) main() { int i1,i2; il=f(8)/f(4); i2=f(4+4)/f(2+2); printf("%d,%d\n",i1,i2);
以下isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,否则返回0。请填空。intisprime(inta){inti;for(i=2;i<=a/2;i++)
先有两个C程序文件T18.c和myfun.c同在TC系统目录(文件夹)下,其中T18.c文件如下:#include<stdio.h>#include"myfun.c"main(){
以下程序用于判断a、b、c能否构成三角形,若能,输出YES,否贝愉出NO。当给a、b、c输入三角形三条边长时,确定a、b、c能构成三角形的条件是需同时满足三个条件;a+b>c,a+c>b,b+c>a。请填空。main(){
下列定义变量的语句中错误的是______。
下面rotate函数的功能是:将n行n列的矩阵A转置为A’,例如:#defineN4voidrotate(inta()[N]){inti,j,t;f
随机试题
黄鹤之飞尚不得过。(《蜀道难》)尚:
急性硬膜外血肿最常见的出血来源为:()
患者,女性,分娩后半年,现哺乳,已恢复行经。欲长期避孕,宜采用的避孕方式为
直接作用于吗啡受体,适用于无痰的剧烈干咳,但反复应用具有成瘾性的药物是
港口与航道工程安全生产要求中,现场施工用电必须实行(),所有电器设备必须做到“一机、一闸、一漏电”。
期权的买方在期权到期日前,不得要求期权的卖方履行合约,仅能在到期日当天要求期权卖方履行期权合约指的是()。
MIMD systems can be classified into(71)-oriented systems, high-availability systems and response-oriented systems. The goal of(7
执行以下程序后的输出结果为()。#include<iostream>Usingnamespacestd;voidfun(intx,inty,int*cp,int*dp){*cp=x+y;2*dp=x-y;}void
【B1】【B11】
A.afterB.stormC.entitledD.illegalE.exaggerateF.beforeG.thunderH.interpretationI.agreedJ.qualifiedK.
最新回复
(
0
)