首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C函数,回答问题1和问题2,将解答填入对应栏内。 [说明] 对于具有n个元素的整型数组a,需要进行的处理是删除a中所有值为0的数组元素,并将a中所有非0元素按照原顺序连续地存储在数组空间的前端。 下面分别用函数compact
阅读以下说明和C函数,回答问题1和问题2,将解答填入对应栏内。 [说明] 对于具有n个元素的整型数组a,需要进行的处理是删除a中所有值为0的数组元素,并将a中所有非0元素按照原顺序连续地存储在数组空间的前端。 下面分别用函数compact
admin
2012-01-13
116
问题
阅读以下说明和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
程序员下午应用技术考试
软考初级
相关试题推荐
电子商务网站上可以收集到大量客户的基础数据、交易数据和行为数据。以下数据中,()不属于行为数据。
某村领导要求信息处理技术员估计该村一池塘中的鱼的大致数量。该技术员想出了一个办法:先从池塘中捕出30条鱼,在每条鱼身上做一记号后,又放回池塘。几天后,再从该池塘中捕出40条鱼,发现其中有2条是有记号的。因此,他估计该池塘鱼的数量大致为(68)条(假设这几天
在Windows环境中,选择某一部分信息(例如一段文字、一个图形)移动到别处,可以首先执行“编辑”菜单下的(5)命令。
计算机使用一段时间后发现,系统启动时间变长,系统响应迟钝,应用程序运行缓慢,为此,需要进行系统优化。系统优化工作不包括___________。
下列选项中,准确表达“甲和乙不可能都参加考试”含义的是(35)。
在Excel中,A1,A2,B1,B2,C1,C2单元格的值分别为1、2、3、4、3、5,在D1单元格中输入函数“=SUM(A1:B2,B1:C2)”,按回车键后,D1单元格中显示的值为______。
发送电子邮件属于信息处理的(33)过程。
在网页中创建一个如下图所示的表单控件的HTML代码是(26)。
该公司用一个C类地址块202.119.110.0/24组网,将下表中的(1)~(6)处空缺的主机地址或子网掩码填写在答题纸的相应位置。可以采用(10)方法防止IP地址被盗用。(10)A.IP地址与子网掩码进行绑定B.IP地址与MAC地址进行
某计算机字长为8位,它用补码、原码或反码来表示带符号的二进制整数(最高一位为符号位),则机器代码11111111所表示的十进制真值分别为(4)、(5)或(6)。
随机试题
A.黄连解毒汤B.宣毒发表汤C.清咽下痰汤D.清解透表汤E.羚角钩藤汤治疗麻疹初热期应首选的方剂是()
美罗培南的临床应用注意有
试述国外有关领导素质的观点。
属于急性间质性肾炎的是属于肾盂肾炎的是
动态投资回收期指标一般适用于评价开发完成后出租或经营的房地产开发项目。()
为满足同一设备项目的融资需要,由政府贷款与出口贷款共同组成的贷款,称之为()。
根据资料,回答下列问题:该市居民各项活动占用时间最多的是()。
下列有关利率的说法,错误的是:
确定常数a和b,使得函数f(x)=处处可导.
LargenumbersofpeopleareinneedofemergencyassistanceinEasternAfrica___monthsofheavyrainsassociatedwithElNino.
最新回复
(
0
)