- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软酷网官网 :
2013年软考程序员下半年下午卷解析
——试题二
问题描述
阅读以下说明和C 函数,填充函数中的空缺,将解答填入答题纸的对应栏内。
【说明】
下面的函数sort(int n,int a[])对保存在数组a 中的整数序列进行非递减排
序。由于该序列中的元素在一定范围内重复取值,因此排序方法是先计算出每个元
素出现的次数并记录在数组b 中,再从小到大顺序地排列各元素即可得到一个非递
减有序序列。例如,对于序列6, 5, 6, 9, 6, 4, 8, 6, 5,其元素在整数区间
[4,9]内取值,因此使数组元素b[0]~ b[5]的下标0~5分别对应数值4~9,顺序
地扫描序列的每一个元素并累计其出现的次数,即将4 的个数记入b[0],5的个数
记入b[l],依此类推,9 的个数记入b[5]。最后依次判断数组b 的每个元素值,并
将相应个数的数值顺序地写入结果序列即可。
对于上例,所得数组b 的各个元素值如下:
b[0] B[1] B[2] B[3] B[4] B[5]
1 2 4 0 1 1
那么在输出序列中写入1 个4、2 个5、4 个6、1 个8、1 个9,即得
4,5,5,6,6,6,6,8,9, 从而完成排序处理。
【C 函数】
void sort (int n, int a[])
{
int *b;
int i, k, number;
int minimum a[0], maximum a[0];
/* minimum和maximum分别表示数组a的最小、最大元素值*/
for(i l; in; i++)
{
if ( (1) )
{
minimum a[i];
}
else
{
软酷网官网 :
if ( (2) ) maximum a [i];
}
}
number maximum - minimum + 1;
if (number l) return;
b (int *)calloc(number, sizeof(int));
if (!b) return;
for(i 0; in; i++) {
/*计算数组a的每个元素值出现的次数并记入数组b */
k a [i] - minimum;
++b[k];
}
/*按次序在数组a 中写入排好的序列*/
i ( 3 ) ;
for(k 0;knumber;k++ )
{
for( ; (4) ;--b[k])
{
a [i++] minimum + ( 5 ) ;
}
}
}
【答案】
(1) a[i]minimum,或a[i] minimum,或其等价形式
(2) a[i]maximum,或a[i] maximum,或其等价形式
(3) 0
(4) b[k],或b[k]0,或b[k]! 0,或其等价形式
(5) k
问题分析
1、本题实现的是对数组进行非递减排序,考察C语言基本语法和运算逻辑。
涉及顺序结构、选择结构、循环结构。
顺序结构:执行顺序是自上而下,依次执行。
选择结构:判断给定的条件,根据判断的结果来控制程序的流程,如:
if (a 1) {
b 2;
} else {
软酷网官网 :
b 3;
}
当a为1时,b等于2,否则b等于3。
循环结构:用来描述重复执行某段算法的问题 ,如:求1+2+3+4+5
int i, sum;
for (i 1; i 5; i++) {
sum sum + i;
}
最后得到的sum值即为1+2+3+4+5的和。
i的值
您可能关注的文档
最近下载
- 儿科学(第四版)课件 第13章第二节 葡萄糖-6-磷酸脱氢酶缺乏症.ppt VIP
- 2024年消防产品项目营销策划方案.pptx
- 地图的发展史的历程.ppt
- 2014花灯调完整版.doc
- GB∕T18972-2017旅游资源分类、调查与评价(高清版).pdf
- 【语文】第15课《青春之光》教案 2024-2025学年统编版语文七年级下册.docx VIP
- 浅析布鲁赫《g小调小提琴协奏曲第一乐章》演奏法要点.docx
- BS EN 12390-3-2019 硬化混凝土试验.第3部分:试验试样的抗压强度.pdf
- 外围及地下车库等公共设施的清洁、保洁工作方案.docx VIP
- 2024年必威体育精装版离婚协议书下载6篇.docx
文档评论(0)