首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是将不带头结点的单向链表逆置,即若原链表中从头至尾结点数据域依次为2、4、6、8、10,逆置后,从头至尾结点数据域依次为10、8、6、4、2。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
给定程序中,函数fun的功能是将不带头结点的单向链表逆置,即若原链表中从头至尾结点数据域依次为2、4、6、8、10,逆置后,从头至尾结点数据域依次为10、8、6、4、2。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
admin
2021-07-09
44
问题
给定程序中,函数fun的功能是将不带头结点的单向链表逆置,即若原链表中从头至尾结点数据域依次为2、4、6、8、10,逆置后,从头至尾结点数据域依次为10、8、6、4、2。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include<stdio.h>
2 #include <stdlib.h>
3 #define N 5
4 typedef struct node {
5 int data;
6 struct node*next;
7 NODE;
8 /*********found*********/
9
【1】
*fun(NODE * h)
10 {NODE*p,*q,*r;
11 p=h;
12 if(p==NULL)
13 return NULL ;
14 q=p->next;
15 p->next=NULL;
16 while(q)
17 {
18 /********* found*********/
19 r=q->
【2】
;
20 q->next=p;
21 p=q;
22 /*********found*********/
23 q=
【3】
;
24 }
25 return p;
26 }
27 NODE*creatlist(int a[])
28 { NODE*h,*p,*q;int i ;
29 h=NULL;
30 for(i=0;i<N;i++)
31 { q=(NODE*)malloc(sizeof(NODE);
32 q->data=a
;
33 q->next =NULL;
34 if(h==NULL)h=p=q;
35 else{p->next=q;p=q;}
36 }
37 return h;
38 }
39 void outlist(NODE*h)
40 { NODE*p;
41 p=h;
42 if(p==NULL)
43 printf(’’The list is NULL!\n’’);
44 else
45 {printf(’’\nHead’’);
46 do
47 {printf(’’->%d’’,p-> data);
48 p=p->next;}
49 while(p!=NULL);
50 printf(’’->End\n’’);
51 }
52 }
53 main()
54 { NODE * head;
55 int a[N]={2,4,6,8,10);
56 head=creatlist(a);
57 printf(’’\nThe original list:\n’’);
58 outliSt(head);
59 head=fun(head);
60 printf(’’\nThe list after inverting:\n’’);
61 outlist(head);
62 }
选项
答案
(1)NODE (2)next (3)r
解析
填空1:本题考查了函数指针变量的函数返回值的类型,*fun(NODE * h)的返回值为p,而p的数据类型为NODE,因此本空应该填写NODE。
填空2:从此空的形式p->可知本空应该填写next。
填空3:本题要求将不带头结点的单向链表逆置,为了使q的指针向后移,此空应该填写r。
转载请注明原文地址:https://kaotiyun.com/show/VZtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设有定义:structcomplex{intreal,unreal;}datal={1,8},data2;则以下赋值语句中错误的是()。
给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。请在程序的下划
有以下程序:#includevoidf(intb[]){inti;for(i=2;i
有以下程序:#include#includeintfun(intn){int*p;p=(int*)malloc(sizeof(int));*p=n;return*p;}
设有定义:intsum=100,i;以下选项中,能够实现sum-=1+2+3…+10的程序段是()。
若有定义:chars[30]={0};运行时输入:Thisisastring.<回车>则以下不能正确读入整个字符串Thisisastring.到字符数组s中的语句组是()。
若有如下说明,且int类型占两个字节,则正确的叙述为()。structst{inta;intb[2];}a;
算法的空间复杂度是指()。
数据结构主要研究的是数据的逻辑结构、数据的运算和()。
随机试题
受害的公民死亡,()有权要求赔偿。
广义带下是指
肾输尿管结石最突出的症状是
2岁儿童,发热、头痛、恶心呕吐2天,嗜睡1天。查体:体温39.5℃,浅昏迷,瞳孔等大,对光反应良,颈强(+),克氏征(+),胸腹部多个出血点。化验:WBC19×109/L,N85%,最可能的诊断是
所有者权益是指企业的所有者对企业资产的要求权。()
甲公司属于商品流通企业,为增值税一般纳税人,适用增值税税率17%,商品售价中不含增值税。该公司只经营乙类商品并采用毛利率法对发出商品计价,季度内各月份的毛利率根据上季度实际毛利率确定。2013年度发生如下与商品销售和职工薪酬有关的事项:(1)第一季度累计
国民党“一大”确立的政策是()。
简答历史研究法在教育科学研究中的适用范围。
一则公益广告劝告人们,酒后不要开车,直到你感到能安全驾驶的时候才开。然而,在医院进行的一项研究中,酒后立即被询问的对象往往低估他们恢复驾驶能力所需要的时间。这个结果表明,在驾驶前饮酒的人很难遵循这个广告的劝告。下列哪项如果为真,最能强有力地支持以上结论?
有以下程序main(){unsignedchara=2,b=4,c=5,d;d=a|b;d&=c;printf("%d\",d);}程序运行后的输出结果是
最新回复
(
0
)