首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,填写程序中的空,将解答写入答题纸的对应栏内。 【说明】 函数insertElem的功能是在元素升序排列的数组中加入一个新元素并保持数组元素升序排列的特点。在main函数中输入若干表示价格的实数,输入为0或负数或实数个数超出限定
阅读以下说明和C代码,填写程序中的空,将解答写入答题纸的对应栏内。 【说明】 函数insertElem的功能是在元素升序排列的数组中加入一个新元素并保持数组元素升序排列的特点。在main函数中输入若干表示价格的实数,输入为0或负数或实数个数超出限定
admin
2020-05-13
51
问题
阅读以下说明和C代码,填写程序中的空,将解答写入答题纸的对应栏内。
【说明】
函数insertElem的功能是在元素升序排列的数组中加入一个新元素并保持数组元素升序排列的特点。在main函数中输入若干表示价格的实数,输入为0或负数或实数个数超出限定数量时终止,调用insertElem将价格按升序保存在数组pdata中,最后输出所输入的实数。
【C代码】
#define ARR$Z 10001
void insertElem(double art[], int n,double elem)
/*arr空间足够大且其元素按照升序排列,将elem插入arr中并保持其升序特点*/
{ int i;
double tmp;
if(n==0 || elem>=arr[n-1]){________________=elem;return;}
for(i=n-1;i>=0 &&elem<arr
; i--){ //查找插入位置并将元素后移
________________;
}
________________=elem; //将元素放入最终位置
}
int main()
{ int idx,n=0;
double price,pdata[ARRSZ];
do{
scanf(“%1f”,&price);
if(price<=0)________________;
insertElem(________________);//调用insertElem将price的值加入pdata数组
n++;
}while(n<ARRSZ);
for(idx=0;________________;idx++)//按升序输出所输入的实数
printf(“%.21f\t”,pdata[idx]);
return 0;
}
选项
答案
arr[n]或*(arr+n)或其等效形式 arr[i+1]=arr[i]或其等效形式 arr[i+1]或*(arr+i+1)或其等效形式 break pdata,n,price 注:pdata可替换为&pdata或&pdata[0] idx<n或其等效形式
解析
本题考查C程序运算和控制逻辑及函数参数传递机制。
设初始时数组中的有序序列如下:
假设要在该数组中分别插入元素55和35,过程如下:
(1)插入55时,由于55大于有序序列的最后一个元素(即elem>arr[n-1],此时n=5),因此将55直接存入art[n]即可,结果如下,因此空(1)出应填入“arr[n]”或其等效形式。
(2)插入35时,通过比较elem<arr[4]成立、elem<arr[3]成立、elem<arr[2]不成立,找到插入位置为arr[3],在此过程中可以将arr[14]的50、arr[13]的40依次向其后继位置移动,如下表所示。
运算开始时,i等于n-1(即arr[4]的下标),之后i递减,直到elem<arr
不成立,需要将满足elem<arr
的数组元素的值移入i+1下标对应的位置,因此空(2)处应填入“arr[i+1]=arr
”或其等效形式。最后再将elem的值插入空出来的位置,由于查找位置的循环结束时,elem<arr
不成立,也就是说elem的值应插入arrli]之后的位置,因此空(3)处应填入“arr[i+1]”或其等效形式,完成插入运算。
根据题目描述,输入负数或0时结束,因此空(4)出应填入跳出循环的语句break。
空(5)是调用函数insertElem时的实参,按照函数调用时对实参和形参类型、数量方面的约定,该空应填写数组空间首地址、数组元素个数和待插入的元素,即“pdata,n,price”或其等效形式。
根据空(6)所在语句的作用,循环条件为“idx<n”。
转载请注明原文地址:https://kaotiyun.com/show/P2jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
评价信息系统时需要听取各有关方面的意见。在听取系统操作人员的意见时,主要讨论信息系统的______。
打开DOC文档48.doc,有如下表格,欲在空白单元格中计算出整行其他四个单元格的数值之和,应在空白单元格中插入公式(48)。
在Excel2007中,利用填充柄可以将数据复制到相邻单元格中。若选择含有数值的上下相邻的两个单元格,按住鼠标左键向下拖动填充柄,则数据将以(49)________________填充。
操作系统的功能不包括______。
某企业的大数据工程项目包括如下四个阶段的工作:①数据获取,②数据清洗与整理,③数据分析,④数据展现。一般来说,工作量较大、花费时间较长的阶段是______(1),技术含量最高的阶段是______(2),准备向有关部门递交成果的阶段是______(3)。
计算机病毒是一段程序,一般隐藏在______中。
在Excel2007的A1单元格中输入函数“=LEFT(“CHINA”,1)”,按回车键后,则A1单元格中的值为()。
在WindowsXP中,删除某个应用程序在桌面上的快捷方式,则(42)。
在数据库中能够唯一地标识一个记录被称为______。
随机试题
治疗月经先期之阳盛血热证的首选方是( )。治疗月经后期之血虚证的首选方是( )。
患者女性,35岁,长期留置导尿管,保持导尿管通畅的方法是
2005年5月23日,中国人民银行发布了《短期融资券管理办法》。根据该办法规定,短期融资券是指企业依照该办法规定的条件和程序在证券交易所发行和交易,约定在一定期限内还本付息,最长期限不超过两年的有价证券。()
某生产企业为增值税一般纳税人,2014年有关经营情况和纳税情况如下:(1)销售收入2300万元,销售成本900万元;(2)投资收益共计100万元,其中50万元为国债利息收入,另外50万元为境外分回的投资收益(境外所得税税率为20%);(3)销售费用6
《人民警察法》第二十条规定:“人民警察必须做到:①秉公执法,办事公道;②模范遵守社会公德;③礼貌待人,文明执勤;④尊重人民群众的风俗习惯。”这是对人民警察在履行职务过程中的行为要求,也是人民警察职业道德方面的()。
耦和是软件中各模块间相互联系的一种度量,耦和的强弱取决于模块间接口的复杂程度,耦和的若干种类中,耦和度最高的是
设a=6,则执行x=IIf(a>5,-1,0)后,x的值为______。
算法一般都可以用哪几种控制结构组合而成______。
______theU.S.willproposetariff-cuttingintwophases?______theproposalcouldaveragelysaveaU.S.family$1,600ayear?
ThefollowingisaJobAdvertisement.Afterreadingit,youshouldgivebriefanswerstothe5questions(No.56throughNo.60)
最新回复
(
0
)