2017年下半年软件水平考试(初级)程序员下午(应用技术)真题试卷
流程图题
1.阅读以下说明和流程图,填补流程图中的空缺,将解答填入对应栏内。
【说明】
对于大于1的正整数n,(x+1)n可展开为Cn0xn+Cn1xn-1+Cn2xn-2+…+Cnn-1x1+Cnnx0。
下面流程图的作用是计算(x+1)n展开后的各项系数Cni(i=0,1,…,n),并依次存放在数组A[0..n]中。方法是依次计算k=2,3,…,n时(x+1)k的展开系数并存入数组A,在此过程中,对任一确定的k,利用关系式Cki=Ck-1i+Ck-1i-1,按照i递减的顺序逐步计算并将结果存储在数组A中。其中,Ck0和Ckk都为1,因此可直接设置A[0]、A[k]的值为1。
例如,计算(x+1)3的过程如下:
先计算(x+1)2(即k=2)的各项系数,然后计算(x+1)3(即k=3)的各项系数。
k=2时,需要计算C20、C11和C22,并存入A[0]、A[1]和A[2],其中A[0]和A[1]的值已有,因此将C11(即A[1])和C10(即A[0])相加得到C21的值并存入A[1]。
k=3时,需要计算C30、C31、C32和C33,先计算出C32(由C22+C21得到)并存入A[2],再计算C31(由C21+C20得到)并存入A[1]。
【流程图】
(1)2,n或2,n,1
(2)A[k]或其等价形式
(3)k-1,1,一1
(4)A[i]+A[i-1]或其等价形式
(5)A[i]或其等价形式
解析:本题考查对算法流程图的理解和表示能力,这是程序员必须具备的技能。
对k=1,2,3,…,(x+1)k的展开式系数可列出如下(杨辉三角):
k=1时1 1
k=2时1 2 1
k=3时1 3 3 1
k=4时1 4 6 4 1
A[0]A[1] A[2] A[3] A[4]…
计算是逐行进行的,而且各行计算的结果需要保存在同一数组A中。
杨辉三角的规律为:每行有k+1个数,依次保存在A[0:k]中。首末两数都是1。中间任一个数等于其上面一个数与左上数之和。由于采用同一数组存放各行,因此每计算出一个数存放后就会代替原来的数。这样,在同一行计算的过程中,不能从左到右计算,而应从右到左计算(按数组下标i递减的顺序)。
流程图中,一开始对A[0]和A[1]置1,这就是k=1时的计算结果。
接着需要对k=2,3,…,n进行循环计算,因此流程图空(1)处应填2,n或者2,n,1。
在对第k行进行计算时,显然应首先将最右边的A[k]置1,因此空(2)处应填A[k]。
接着应从右到左逐个计算这一行中间的各个数:A[k-1],A[k-2],…,A[1],因此,(3)处应填k-1,1,一1(即数组下标从k-1开始每次递减1直到1)。
接着应计算A[i]。根据杨辉三角的规律,它应等于原来的A[i]与前一个数A[i-1]之和。因此空(4)处应填A[i]+A[i-1],而空(5)处应填A[i]。
当i和k双重循环结束后,A[0:n]中的结果就是(x+1)n展开后的各项系数。
C语言题
2.阅读以下说明和代码,填补代码中的空缺,将解答填入对应栏内。
【说明】
对n个元素进行简单选择排序的基本方法是:第一趟从第1个元素开始,在n个元素中选出最小者,将其交换至第一个位置,第二趟从第2个元素开始,在剩下的n-1个元素中选出最小者,将其交换至第二个位置,依此类推,第i趟从n-i+1个元素中选出最小元素,将其交换至第i个位置,通过n—1趟选择最终得到非递减排序的有序序列。
【代码】
#include
void selectS0rt(int data[], int n )
//对data[0]~data [n—1]中的n个整数按非递减有序的方式进行排列
{
int i、 j、k;
int temp;
for(i=0;i<n一1; i++) {
for(k=i,j=i+1; (1);(2) //k表示data[i]~data[n-1]中最
小元素的下标
if(data[j]<data[k]) (3);
if(k!=i){
//将本趟找出的最小元素与data[i]交换
temp=data[i];(4); data[k]=temp;
}
}
}
int main()
{
int arr[]={79,85,93,65,44,70,100,57};
int i,m;
m=sizeof(arr)/sizeof(int); //计算数组元素个数,用m表示
(5); //调用selectSort对数组arr进行非递减排序
for((6);i<m;i++) //按非递减顺序输出所有的数组元素
printf(’’%d\t’’,arr[i]);
printf(’’\n’’);
return 0;
}
(1)j<n或其等价形式
(2)j++或其等价形式
(3)k=j
(4)da
本文档预览:3600字符,共10745字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载