二级C语言真题3及答案解析.docx

上传人:b****5 文档编号:11617080 上传时间:2023-03-28 格式:DOCX 页数:51 大小:36.06KB
下载 相关 举报
二级C语言真题3及答案解析.docx_第1页
第1页 / 共51页
二级C语言真题3及答案解析.docx_第2页
第2页 / 共51页
二级C语言真题3及答案解析.docx_第3页
第3页 / 共51页
二级C语言真题3及答案解析.docx_第4页
第4页 / 共51页
二级C语言真题3及答案解析.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

二级C语言真题3及答案解析.docx

《二级C语言真题3及答案解析.docx》由会员分享,可在线阅读,更多相关《二级C语言真题3及答案解析.docx(51页珍藏版)》请在冰豆网上搜索。

二级C语言真题3及答案解析.docx

二级C语言真题3及答案解析

二级C语言真题2015年09月-(3)及答案解析

(1/40)单项选择题

第1题

下列叙述中正确的是______。

A.程序可以作为算法的一种表达方式

B.算法的有穷性是指算法的规模不能太大

C.算法的复杂度用于衡量算法的控制结构

D.算法的效率与数据的存储结构无关

下一题

(2/40)单项选择题

第2题

某循环队列的存储空间为Q(1:

m),初始状态为front=rear=m。

现经过一系列的入队操作和退队操作后,front=m-1,rear=m,则该循环队列中的元素个数为______。

A.m-1

B.1

C.m

D.0

上一题下一题

(3/40)单项选择题

第3题

能从任意一个结点开始没有重复地扫描到所有结点的数据结构是______。

A.循环链表

B.双向链表

C.二叉链表

D.有序链表

上一题下一题

(4/40)单项选择题

第4题

某棵树中共有25个结点,且只有度为3的结点和叶子结点,其中叶子结点有7个,则该树中度为3的结点数为______。

A.不存在这样的树

B.7

C.8

D.6

上一题下一题

(5/40)单项选择题

第5题

在最坏情况下,二分查找法的时间复杂度为______。

A.n/2log2n

B.n/2

C.log2n

D.n

上一题下一题

(6/40)单项选择题

第6题

某二叉树共有730个结点,其中度为1的结点有30个,则叶子结点个数为______。

A.不存在这样的二叉树

B.351

C.1

D.350

上一题下一题

(7/40)单项选择题

第7题

软件开发中需求分析的主要任务是______。

A.定义和描述目标系统“做什么”

B.获取需求

C.给出软件解决方案

D.需求评审

上一题下一题

(8/40)单项选择题

第8题

软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。

下面属于系统软件的是______。

A.学生成绩管理系统

B.ERP系统

C.办公自动化系统

D.UNIX系统

上一题下一题

(9/40)单项选择题

第9题

医生可以为病人开不同的药,而同一种药也可由不同医生开给病人,则实体医生和实体药之间的联系是______。

A.多对多

B.一对一

C.多对一

D.一对多

上一题下一题

(10/40)单项选择题

第10题

学生选课成绩表的关系模式是SC(S#,C#,G),其中S#为学号,C#为课号,G为成绩,检索课号为2且成绩及格的学生学号的表达式为______。

A.πS#(σC#=2∧G≥60(SC))

B.σG≥60(SC)

C.σC#=2∧G≥60(SC)

D.πS#(σC#=2(SC))

上一题下一题

(11/40)单项选择题

第11题

若想定义int型变量a,b,c,d并都赋值为1,以下写法中错误的是______。

A.inta=b=c=d=1;

B.inta=1,b=1,c=1,d=1;

C.inta,b,c,d;a=b=c=d=1;

D.inta,b,c,d=1;a=b=c=d:

上一题下一题

(12/40)单项选择题

第12题

若有定义:

charc;doubled;程序运行时输入:

12<回车>,能把字符1输入给变量c、数值2输入给变量d的输入语句是______。

A.scanf("%d%lf",&c,&d);

B.scanf("%c%lf",&c,&d);

C.scanf("%c%f",&c,&d);

D.scanf("%d%f",&c,&d);

上一题下一题

(13/40)单项选择题

第13题

输出语句:

printf("%d\n",11+011);的输出结果是______。

A.20

B.22

C.022

D.021

上一题下一题

(14/40)单项选择题

第14题

以下叙述正确的是______。

A.有些算法不能用3种基本结构来表达

B.C语言程序不编译也能直接运行

C.结构化程序的3种基本结构是循环结构、选择结构、顺序结构

D.如果C语言程序实现的算法很简单,则计算机不进行任何代码转换就能执行程序

上一题下一题

(15/40)单项选择题

第15题

若有定义:

doublex;,则表达式:

x=0,x+10,x++的值是______。

A.11.0

B.10.0

C.0.0

D.1.0

上一题下一题

(16/40)单项选择题

第16题

有以下程序:

#include

main()

{ intx=1,y=0,a=0,b=0;

switch(x)

{ case1:

switch(y)

{case0:

a++;break;

case1:

b++;break;

}

case2:

a++;b++;break;

case3:

a++;b++;

}

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

}

程序的运行结果是______。

A.a=2,b=2

B.a=2,b=1

C.a=1,b=1

D.a=1,b=0

上一题下一题

(17/40)单项选择题

第17题

以下程序段中的变量已正确定义

for(i=0;i<4;i++,i++)

for(k=1;k<3;k++);printf("*");

该程序段的输出结果是______。

A.*

B.****

C.**

D.********

上一题下一题

(18/40)单项选择题

第18题

有以下程序:

#include

main()

{ charc;

for(;(c=getchar())!

=´#´;)

{if(c>=´a´&&c<=´z´)c=c-´a´+´A´;

putchar(++c);

}

}

执行时输入:

aBcDefG##<回车>,则输出结果是______。

A.AbCdEFg

B.ABCDEFG

C.BCDEFGH

D.bcdefgh

上一题下一题

(19/40)单项选择题

第19题

有以下程序:

#include

intf(intx);

main()

{intn=1,m;

m=f(f(f(n)));pfintf("%d\n",m);

}

intf(intx)

{returnx*2;}

程序运行后的输出结果是______。

A.4

B.2

C.8

D.1

上一题下一题

(20/40)单项选择题

第20题

关于地址和指针,以下叙述正确的是______。

A.可以通过强制类型转换让char型指针指向double型变量

B.函数指针p指向一个同类型的函数f时,必须写成:

p=&f;

C.指针p指向一个数组f时,必须写成:

p=&f;

D.一个指针变量p可以指向自身

上一题下一题

(21/40)单项选择题

第21题

有以下程序:

#include

#defineN4

intfun(inta[][N])

{inti,j,x=0;

for(i=0;ifor(j=0;jif(i==j)

x+=a[N-1-j][i];

returnx;

}

main()

{intx[N][N]={{1,2,3,4},

{5,6,7,8},

{9,10,11,12},

{13,14,15,17}},y;

y=fun(x);

pfintf("%d\n",y);

}

程序运行后的输出结果是______。

A.34

B.35

C.28

D.59

上一题下一题

(22/40)单项选择题

第22题

有以下程序:

#include

#defineN3

voidfun(intx[][N],int*r1,int*r2)

{inti,j;

*r1=*r2=0;

for(i=0;i{j=N-(i+1);

if(x[*r1][*r2]}

}

main()

{ inta[N][N]={1,5,7,9,2,6,4,3,8},i,j;

fun(a,&i,&j);

printf("%d\n",a[i][j]);

}

程序运行后的输出结果是______。

A.8

B.6

C.7

D.9

上一题下一题

(23/40)单项选择题

第23题

对于以下函数声明

voidfun(intarray[4],int*ptr);

以下叙述中正确的是______。

A.array,ptr都是指针变量

B.调用fun函数时,实参的值将逐一复制给array

C.调用fun函数时,array按值传送,ptr按地址传送

D.array是数组,ptr是指针,它们的性质不同

上一题下一题

(24/40)单项选择题

第24题

设有定义:

intx[10],*p=x,i;,若要为数组x读入数据,以下选项正确的是______。

A.for(i=0;i<10;i++)scanf("%d",p+i);

B.for(i=0;i<10;i++)scanf("%d",*p+i);

C.for(i=0;i<10;i++)scanf("%d",*(p+i));

D.for(i=0;i<10;i++)scanf("%d",x[i]);

上一题下一题

(25/40)单项选择题

第25题

有以下程序:

#include

main()

{ chars[]="012xy\08s34f4w2";

inti,n=0;

for(i=0;s[i]!

=0;i++)

if(s[i]>=´0´&&s[i]<=´9´)n++;

printf("%d\n",n);

}

程序运行后的输出结果是______。

A.7

B.0

C.3

D.8

上一题下一题

(26/40)单项选择题

第26题

有以下程序段:

charstr[4][12]={"aaa","bbb","ccc","ddd"},*p[4];

inti;

for(i=0;i<4;i++)p[i]=str[i];

以下选项中不能正确引用字符串的是______。

A.*p[3]

B.p[3]

C.str[2]

D.*p

上一题下一题

(27/40)单项选择题

第27题

有以下程序:

#include

intmul(intval)

{ staticintinit=1;

returninit*=val;

}

main()

{ inti;

for(i=1;i<=5;i++)

printf("%d,",mul(i));

}

程序运行后的输出结果是______。

A.1,2,6,24,120,

B.1,2,3,4,5,

C.1,1,1,1,1,

D.1,2,4,6,8,

上一题下一题

(28/40)单项选择题

第28题

有以下程序:

#include

voidfun(intn)

{ staticintk=0;

if(n<0){printf("-");n=-n;}

k+=n%10;printf("%d,",k);

if(n/10)fun(n/10);

}

main()

{ intx=-12;

fun(x);printf("\n");

}

程序运行后的输出结果是______。

A.-2,3,

B.-1,-2,

C.-2,-3,

D.-2,1

上一题下一题

(29/40)单项选择题

第29题

有以下程序:

#include

structS{intn;inta[20];};

voidf(structS*p)

{inti,j,t;

for(i=0;in-1;i++)

for(j=i+1;jn;j++)

if(p->a[i]>P->a[j]){t=p->a[i];p->a[i]=p->a[j];p->a[j]=t;}

}

main()

{inti;structSs={10,{2,3,1,6,8,7,5,4,10,9}};

f(&s);

for(i=0;i}

程序运行后的输出结果是______。

A.1,2,3,4,5,6,7,8,9,10,

B.10,9,8,7,6,5,4,3,2,1,

C.2,3,1,6,8,7,5,4,10,9,

D.10,9,8,7,6,1,2,3,4,5,

上一题下一题

(30/40)单项选择题

第30题

有以下程序:

#include

typedefstruetstu{

charname[10];

chargender;

intscore;

}STU;

voidf(STUa,STU*b,STUc)

{*b=c=a;

printf("%s,%c,%d,",b->name,b->gender,b->score);

printf("%s,%c,%d,",c.name,c.gender,c.score);

}

main()

{STUa={"Zhao",´m´,290},b={"Qian",´f´,350t,c={"Sun",´m´,370};

f(a,&b,c);

printf("%s,%c,%d,",b.name,b.gender,b.score);

printf("%s,%c,%d\n",c.name,c.gender,c.score);

}

程序运行后的输出结果是______。

A.Zhao,m,290,Zhao,m,290,Zhao,m,290,Sun,m,370

B.Zhao,m,290,Zhao,m,290,Zhao,m,290,Zhao,m,290

C.Zhao,m,290,Zhao,m,290,Qian,f,350,Sun,m,370

D.Zhao,m,290,Zhao,m,290,Qian,f,350,Zhao,m,290

上一题下一题

(31/40)单项选择题

第31题

有以下程序:

#include

#defineSUB(x,y)(x)*(y)

main()

{inta=3,b=4;

printf("%d\n",SUB(a++,b++));

}

程序运行后的输出结果是______。

A.15

B.12

C.16

D.20

上一题下一题

(32/40)单项选择题

第32题

有以下程序:

#include

main()

{structcm{intx;inty;}a[2]={4,3,2,1};

printf("%d\n",a[0].y/a[0].x*a[1].x);

}

程序运行后的输出结果是______。

A.1

B.4

C.0

D.3

上一题下一题

(33/40)单项选择题

第33题

以下选项中的编译预处理命令行,正确的是______。

A.#defineE2.38

B.##definePI_21.56

C.#defineintINT

D.#DEFINETRUE

上一题下一题

(34/40)单项选择题

第34题

设有以下程序段:

structbook

{ floatprice;

charlanguage;

chartitle[20];

}ree,*ptr;

ptr=&rec;

要求输入字符串给结构体变量rec的title成员,错误的输入语句是______。

A.scanf("%s",ptr.title);

B.scanf("%s",rec.tide);

C.scanf("%s",(*ptr).title);

D.scanf("%s",ptr->title);

上一题下一题

(35/40)单项选择题

第35题

有以下程序:

#include

#include

structcomputer

{charCPU[10];};

main()

{

struetcomputerpc1,pc2;

strcpy(pc1.CPU,"3.2G");

strcpy(pc2.CPU,"?

?

?

?

");

pc1=pc2;

printf("%s\n",pc1.CPU);

}

程序运行后的输出结果是______。

A.?

B.3.2G

C.?

?

?

?

D.?

.2G

上一题下一题

(36/40)单项选择题

第36题

有以下程序:

#include

main()

{

inta=2,b;

b=(a>>=1)+4;

printf("%d,%d",a,b);

}

程序运行后的输出结果是______。

A.1,5

B.2,4

C.2,6

D.2,5

上一题下一题

(37/40)单项选择题

第37题

若要建立下图所示的存储结构,以下正确的程序段是______。

图片

A.char**q,*p,c;

  p=&c;q=&p;

B.char**q,*p,c;

  p=&c;q=*p;

C.char*q,*p,c;

  p=&c;*q=p;

D.char*q,*p,c;

  q=p;p=*c;

上一题下一题

(38/40)单项选择题

第38题

有以下程序:

#include

structtt

{intx;structtt*y;}s[3]={1,0,2,0,3,0};

main()

{structtt*p=s+1;

p->y=s;

printf("%d,",p->x);

p=p->y;

printf("%d\n",p->x);

}

程序运行后的输出结果是______。

A.2,3

B.2,1

C.1,2

D.3,1

上一题下一题

(39/40)单项选择题

第39题

有以下程序:

#include

main()

{intx=3,y=5;

X=x^y;y=x^y;x=x^y;

printf("%d,%d\n",x,y);

}

程序运行后的输出结果是______。

A.3,5

B.5,3

C.35,35

D.8,8

上一题下一题

(40/40)单项选择题

第40题

有以下程序:

#include

structtt

{intx;structtt*y;}s[2]={1,0,2,0};

main()

{ structtt*p=s;

p->y=s;

printf("%d",++p->x);

}

程序运行后的输出结果是______。

A.2

B.0

C.1

D.3

上一题下一题

(1/1)程序填空题

第41题

考生文件夹

函数fun的功能是:

在有n个元素的结构体数组std中,查找有不及格科目的学生,找到后输出学生的学号;函数的返回值是有不及格科目的学生人数。

例如,主函数中给出了4名学生的数据,则程序运行的结果为:

学号:

N1002学号:

N1006

共有2位学生有不及格科目

请在程序的下划线处填入正确的内容,并把下划线删除,使程序得出正确的结果。

注意:

源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

试题程序:

#include

typedefstruet

{charnum[8];

doublescore[2];

/*********found*********/

}__1__;

intfun(STUstd[],intn)

{inti,k=0;

for(i=0;i/**********found**********/

if(std[i].seore[0]<60__2__std[i].score[1]<60)

{k++;printf("学号:

%s",std[i].num);}

/**********found**********/

return__3__;

}

main()

{STUsta[4]={"N1001",76.5,82.0,"N1002",53.5,73.0,

"N1005",80.5,66.0,"N1006",81.0,56.0};

printf("\n共有%d位学生有不及格科目\n",fun(std,4));

}

上一题下一题

(1/1)程序改错题

第42题

考生文件夹

给定程序MODI1.C中,函数fun的功能是判断整数n是否是“完数”。

当一个数的因子之和恰好等于这个数本身时,就称这个数为“完数”。

例如:

6的因子包括1、2、3,而6=1+2+3,所以6是完数。

如果是完数,函数返回值为1,否则函数返回值为0。

数组a中存放的是找到的因子,变量k中存放的是因子的个数。

请改正函数fun中指定部位的错误,使它能得出正确的结果。

注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

#include

intfun(intn,inta[],int*k)

{ intm=0,i,t;

t=n;

/**********found**********/

for(i=0;iif(n%i==0)

{a[m]=i;m++;t=t-i;}

/**********found**********/

k=m;

/**********found**********/

if(t=0)return1;

elsereturn0;

}

main()

{intn,a[10],flag,i,k;

printf("请输入一个整数:

");scanf("%d",&n);

flag=fun(n,a,&k);

if(flag)

{ printf("%d是完数,其因子是:

",n);

fur(i=0;iprintf("\n");

}

elseprintf("%d不是完数.\n",n);

}

_________________

上一题下一题

(1/1)程序设计题

第43题

考生文件夹

请编写函数fun:

在形参指针所指的4个整数中找出最大值和最小值,最大的放在a中,最小的放在d中。

注意:

部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

给定源程序:

#include

voidNONO();

voidfun(int*a,int*b,int*c,int*d)

{

}

main()

{in

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 英语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1