首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件nodi1.C。此程序建立了—个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件nodi1.C。此程序建立了—个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为
admin
2020-10-26
40
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件nodi1.C。此程序建立了—个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。
请改正函数fun中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
typedef struct aa
{intdata;
struct aa*next;
}NODE;
int fun(NODE*h)
(int sum=0;
NODE*p;
p=h->next;
/*********found*********/
while(p->next)
{if(p->data%2==0)
sum+=p->data;
/*********found*********/
p=h->next;
}
return sum;
}
NODE*creatlink(int n)
{
NODE*h,*p,*s;
int i;
h=p=(NODE*)malloc(Sizeof(NODE));
for(i=1;i<n;i++)
{
s=(NODE*)malloc(Sizeof(NODE));
s->data=rand()%16;
s->next=p->next;
p->next=s;
p=p->next;
}
p->next=NULL;
return h;
}
outlink(NODE*h)
{NODE*p;
p=h->next;
printf("\n\n The LIST:\n\nHEAD");
while(p)
{printf("->%d",p->data);
p=p->next;}
printf("\n");
}
void main()
{NODE*head;int sum;
system("CLS");
head=creatlink(10);
outlink(head);
sum=fun(head);
printf("\nSUM=%d",sum);
}
选项
答案
(1)while(p!=NULL) (2)p=p->next;
解析
(1)判断当前指针p指向的结点是否存在,若存在则对该结点数据域进行判断操作。
(2)判断结束后指针指向下一个结点。
转载请注明原文地址:https://kaotiyun.com/show/uk3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#includemain(){intx=1,y=2,z=3;if(x>1)if(y>x)putchar(’A’);elseputchar(’B’);elseif
有以下程序:#include<stdio.h>structord{intx,y;}dt[2]={1,2,3,4);main(){structord*p=dt;printf("%d,",+
以下叙述中错误的是()。
设有定义:intx[10],*p=x,i;,若要为数组x读入数据,以下选项正确的是()。
有以下程序:#includemain(){intx,y,z;x=y=1;z=x++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序运行后的输出结果是()。
层次型、网状型和关系型数据库划分原则是()。【10年9月】
有以下程序:#includetypedefstruct{charname[10];intage;}ST;main(){STstud[10]={"Adum",15,
面向对象方法中,继承是指()。
某二叉树的前序序列为ABCDEFG,中序序列为DCBAEFG,则该二叉树的深度(根节点在第1层)为()。
设表的长度为n。下列查找算法中,在最坏情况下,比较次数最少的是
随机试题
不属于C语言转义字符的是【】
患者,男性,45岁,反复血尿脓尿史近3年,长期使用抗生素疗效不佳,多次尿培养阴性。对本病最有价值的辅助检查是
王某因在路边无证摆摊被市容管理机关执法人员张某查处,张某口头作出罚款20元的处罚决定,并要求当场缴纳。王某要求出具书面处罚决定和罚款数据,张某对其要求不予理睬,并拒绝听取王某的申辩。关于该处罚决定,下列哪些说法是错误的?()
某分部工程双代号网络计划如下图所示,其关键线路有()条。
某风险事件发生导致工程成本增加了25%,进度拖延了15%,该风险事件的影响等级应为()
根据《水利水电建设工程验收规程》(SL223-2008)的有关规定,合同工程完工验收应由()主持。
投资者缴付企业的出资额大于其在企业注册资本中所拥有份额的数额,计入( )账户进行核算。
毛泽东在《目前形势和我们的任务》中提出的新民主主义革命的三大经济纲领是()。
明确提出我国经济体制改革的目标是建立社会主义市场经济体制的会议是
Lookatthenotesaboutthequalitiesofgreatmanagers.Someinformationismissing.Youwillhearpartofapresentationbya
最新回复
(
0
)