- 4
- 0
- 约1.04万字
- 约 20页
- 2021-08-24 发布于北京
- 举报
2016下半年程序员考试真题及答案-下午卷
试题一(共15分)
阅读以下说明和流程图,填补流程图中的空缺,将解答填入答题纸的对应栏内。
【说明】
设有整数数组A[1:N](N1),其元素有正有负。下面的流程图在该数组中寻找连续排列的若干个元素,使其和达到最大值,并输出其起始下标K、元素个数L以及最大的和值M。
例如,若数组元素依次为3,-6,2,4,-2,3,-1,则输出K=3,L=4,M=7。该流程图中考察了A[1:N]中所有从下标i到下标j(j≥i)的各元素之和S,并动态地记录其最大值M。
【流程图】
注:循环开始框内应给出循环控制变量的初值和终值,默认递增值为1,格式为:循环控制变量=初值,终值
1、i,N
2、S+A[j]
3、S
4、j-i+1
5、S
要想在数组中寻找连续排列的若干个元素,使其和达到最大值,并输出其起始下标K、元素个数L以及最大的和值M。
那么,会将数组从第一个元素出发,依次比较A[1],A[1] +A[2],A[1] +A[2]+A[3],……,A[1] +A[2]+…+A[N],然后再比较A[2], A[2] +A[3],A[2] +A[3]+A[4],……,A[2] +A[3]+…+A[N],然后再比较A[3] +A[4],A[3] +A[4]+A[5],……,A[3] +A[4]+…+A[N],直到最后一个元素A[N].
按照这种逻辑,要使用两个循环,且要保存之前求和项。一个是i循环,从1到N递增,另一个是j循环,j表示的是求和项的最大下标值,那么j从i开始,且要小于N。 S+A[j]—S不断保留A[i]+ A[i+1]+…A[j]的值,直到j循环结束。并将S的值与之前保存的M的值进行比较,如果SM,则将S的值赋给M,并求出L值,在这里,i是最小下标值,j是最大下标值,那么L=j-i+1。如果SM,则跳出循环。
试题二(共15分)
阅读以下代码,回答问题:1至问题3 ,将解答填入答题纸的对应栏内。
【代码1】
#includestdio.h
void swap(int x, int y)
{
int tmp =x; x= y; y= tmp;
}
int maim()
{
int a= 3, b= 7;
printf(a1= %d b1=%d\n,a,b);
Swap( a, b);
Printf(a2 = %d b2=%d\n”,a,b);
return 0;
}
【代码2】
#includestdio.h
#define SPACE ¨ //空格字符
Int main()
{
char str[128] =”Nothing is impossible! “;
int i,num =0,wordMark=0;
for(i=0;str[i];i++)
If(str[i]=SPACE)
WordMark=0;
else
If(wordMark=0){
wordMark=1;
Mun++;
}
Printf(“%d/n”,num)
retun 0;
}
【代码3】
#includestdio.h
#define SPACE “//空格字符
int countStrs(char *);
int main()
{
char str[128] = Nothing is impossible! ;
Printf(‘%d/n,(1)(str))
retum 0;
}
int countStrs(char *p)
{
int num=0, wordMark= 0;
for(;(2);p++) {
If((3)=SPACE)
wordMark= 0;
else
if( !wordMark ) {
wordMark = 1;
++num
}
}
return(4)
}
【问题1】(4分)
写出代码1运行后的输出结果。
a1=3
b1=7
a2=3
b2=7
【问题2】(3分)
写出代码2运行后的输出结果。
3
【问题3】(8分)
代码3的功能与代码2完全相同,请补充3中的空缺,将解答写入答题纸的对应栏内。
1) CountStr
2) *p
3) *p
4) num
此题考查C语言程序设计能力,要求掌握形参与实参,值传递与引用传递的区别
1、 本题考查函数中值传递与引用传递,在实参与形参传递过程中可以是值传递,值传递时,形参的改变不会影响实参,引用传递是地址的传递,实参将地址传递给形参时,形参的改变会影响实参的改变。在本题中的第一次输出a,b变量的值时,结果是直接输出,所以a1=3,b1=7,而在调用swap函数时,实参a,b传递的是值传递,在函数swap(int x,int y)中形参x,y也是值类型,在函数swap内部是交换两个变量的值,交换完毕后x=y,y=x,但这个改变不会
您可能关注的文档
- 2011下半年程序员考试真题及答案-下午卷.doc
- 2012上半年程序员考试真题及答案-上午卷.doc
- 2012上半年程序员考试真题及答案-下午卷.doc
- 2012下半年程序员考试真题及答案-上午卷.doc
- 2012下半年程序员考试真题及答案-下午卷.doc
- 2013上半年程序员考试真题及答案-下午卷.doc
- 2013下半年程序员考试真题及答案-上午卷.doc
- 2013下半年程序员考试真题及答案-下午卷.doc
- 2014上半年程序员考试真题及答案-上午卷.doc
- 2014上半年程序员考试真题及答案-下午卷.doc
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 课题申报书:四川方言口传文化的传承普及与乡土记忆重建研究.docx VIP
- 医院中层干部考核细则一.doc
- 公司生产安全事故应急预案(按照新导则GBT 29639-2020编制).pdf VIP
- 作业批改系统论文.doc VIP
- DB37_T 4406.1-2021 政法机关刑事案件网上协同指南 第1部分:基础数据规范.docx VIP
- DB37_T 4413.4-2021 生态环境数据共享技术规范 第4部分:土壤.docx VIP
- DB11_T 1820-2025 控制性详细规划(街区层面)环境影响评价技术指南.pdf VIP
- DB11_T 1455-2025 电动汽车充电基础设施规划设计标准.pdf VIP
- DB11_T 1033-2025 工业射线探伤辐射安全和防护分级管理要求.pdf VIP
- 北京市西城区2025-2026学年高三(上)期末历史+答案.pdf
原创力文档

文档评论(0)