首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C函数,回答问题1和问题2,将解答填入对应栏内。 [说明] 对于具有n个元素的整型数组a,需要进行的处理是删除a中所有值为0的数组元素,并将a中所有非0元素按照原顺序连续地存储在数组空间的前端。 下面分别用函数compact
阅读以下说明和C函数,回答问题1和问题2,将解答填入对应栏内。 [说明] 对于具有n个元素的整型数组a,需要进行的处理是删除a中所有值为0的数组元素,并将a中所有非0元素按照原顺序连续地存储在数组空间的前端。 下面分别用函数compact
admin
2012-01-13
78
问题
阅读以下说明和C函数,回答问题1和问题2,将解答填入对应栏内。
[说明]
对于具有n个元素的整型数组a,需要进行的处理是删除a中所有值为0的数组元素,并将a中所有非0元素按照原顺序连续地存储在数组空间的前端。
下面分别用函数compactArr_v1和compactArr_v2来实现上述处理要求,函数的返回值为非零元素的个数。
函数CompactArr(int a[],int n)的处理思路是:首先申请一个与数组a的大小相同的动态数组空间,然后顺序扫描数组a的每一个元素,将遇到的非0元素依次复制到动态数组空间中,最后再将动态数组中的元素传回数组a中。
函数CompactArr_v2(int a[],int n)的处理思路是:利用下标i(初值为0)顺序扫描数组a的每一个元素,下标k(初值为0)表示数组a中连续存储的非0元素的下标。扫描时,每遇到一个数组元素,i就增1,而遇到非0元素并将其前移后k才增1。
[C函数1]
int CompactArr vl(int a[],int n)
{
int i, k;
int *temp=(int*)malloc(n* (1) );
if(!temp)
return-1;
for(i=0, k=0; i<n; i++)
if(a
!=0){
(2) =a
;
}
for(i=0; (3) ; i++)
a
=temp
;
return k;
}
[C函数2]
intCompactArr v2(inta[],intn)
{
int i, k;
for(i=0, k=0; i<n; i++) {
if(a
!=0){
(4) =a
;
}
}
return k;
}
请根据说明中函数CompactArr_v1的处理思路填补空缺(1)~(3),根据CompactArr_v2的处理思路填补空缺(4)。
选项
答案
sizeof(int) tenlp[k++] 或*(temp+k++) 或等价表示 i<k 或等价表示 a[k++] 或*(a+k++) 或等价表示
解析
本题考查C程序设计和分析能力。
本问题考查C程序结构、数组及运算的应用知识。
根据题目中对函数CompactArr_v1的处理思路描述,空(1)处应填入sizeof(int)。
以下代码将数组a中的非0元素复制到动态数组temp中。
for(i=0, k=0; i<n; i++)
if(a
!=0){
(2) =a
;
}
显然,k应作为temp的下标索引变量使用,因此空(2)处应填入temp[k++],当该循环语句结束后,k的值也就是a中非0元素的个数。据此,空(3)处应填入i<k。
根据题目中对函数CompactArr_v2的处理思路描述,空(4)处应填入a[k++]。
转载请注明原文地址:https://kaotiyun.com/show/f6jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
数据收集的基本原则中不包括(7)。
下列关于计算机病毒的说法中错误的是_______。
某信息处理技术员正在做大批数据处理的大项目时,领导又交宋了另一项临时性的紧迫工作,要求优先处理。该信息处理技术员需要转而做新的工作,他对原工作的处理方式应该是(69)。
下图主板接口中,①处是(28),②处可以接的设备是(29),③处可以接的设备是(30)28.
某工厂信息处理技术员设计了如下统计表:该表设计中包含的问题以及改进方法是______。
在Access中,查询“学生”数据表的所有记录及字段的SQL语句是______。
下面记录的是某班36人期末考试的数学成绩:971009596100879610089100936999891008188
为使PPT文件在放映时具有定时播放效果,可在放映前预先用________命令进行设置。
在Windows系统中,控制面板的功能不包括______。
关系数据库是(20)的集合,它由一个或多个关系模式定义。SQL语言中的数据定义功能包括对数据库、基本表、(21)和(22)的定义。设有关系Students(学号,姓名,年龄,性别,系名),如果要查询姓名至少包含5个字母,且倒数第二个字母为“G”的学生的学
随机试题
遇到前方车辆缓慢行驶时怎样行驶?
某开发公司向某银行贷款500万元,到期后,开发公司没有主动还贷。银行多次向该公司发出催收贷款的公函,开发公司均无回音。2000年11月1日,银行向其所在地中级人民法院申请签发支付令。支付令送达后,11月8日,开发公司向法院提出书面异议说:我公司暂时无法还贷
在ISO9000族标准中,主要用于体系认证的标准是()
隐睾对人体的危害不包括( )
为门(急)诊患者开具的麻醉药品控缓释制剂处方中,每张处方的最大限量是
关于对法庭审理中违反法庭秩序的人员可采取的措施,下列哪些选项是正确的?
,则常数a=().
以C1e-x+C2ex+C3为通解的常系数齐次线性微分方程为__________。
网络生命周期各个阶段均需产生相应的文档。下面的选项中,属于需求规范阶段文档的是()。
IshallbeinChinaforthreeweeks.Canyoumakesomesuggestions______whatIshouldsee?
最新回复
(
0
)