2016年下半年软考程序员下午真题(1)

程序员 责任编辑:木木 2016-11-22

添加老师微信

备考咨询

加我微信

摘要:2016年下半年软考程序员下午真题第一部分。

2016年下半年软考程序员下午真题第一部分:

>>>点击进入软考初级程序员历年真题下载

试题一(共15分)

阅读以下说明和流程图,填补流程图中的空缺,将解答填入答题纸的对应栏内。

【说明】

设有整数数组A[1:N](N>1),其元素有正有负。下面的流程图在该数组中寻找连续排列的若干个元素,使其和达到最大值,并输出其起始下标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程序员.png

注:循环开始框内应给出循环控制变量的初值和终值,默认递增值为1,格式为:循环控制变量=初值,终值


试题二(共15分)

阅读以下代码,回答问题:1至问题3,将解答填入答题纸的对应栏内。

【代码1】

#include<stdio.h>

void swap(int x,int y)

{

int tmp=x;x=y;y=tmp;

}

int maim()

{

int a=3,b=7;

printf("al=%d b1=%d\n",a,b);

Swap(a,b);

printf("a2=%d b2=%d\n”,a,b);

return 0;

}

【代码2】

#include<stdio.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】

#include<stdio.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;

++mun

}

}

retum(4);

}

【问题1】(4分)

写出代码1运行后的输出结果。

【问题2】(3分)

写出代码2运行后的输出结果。

【问题3】(8分)

代码3的功能与代码2完全相同,请补充3中的空缺,将解答写入答题纸的对应栏内。

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取