第21次二级C语言考试.docx

上传人:b****5 文档编号:3026750 上传时间:2022-11-17 格式:DOCX 页数:18 大小:21.29KB
下载 相关 举报
第21次二级C语言考试.docx_第1页
第1页 / 共18页
第21次二级C语言考试.docx_第2页
第2页 / 共18页
第21次二级C语言考试.docx_第3页
第3页 / 共18页
第21次二级C语言考试.docx_第4页
第4页 / 共18页
第21次二级C语言考试.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

第21次二级C语言考试.docx

《第21次二级C语言考试.docx》由会员分享,可在线阅读,更多相关《第21次二级C语言考试.docx(18页珍藏版)》请在冰豆网上搜索。

第21次二级C语言考试.docx

第21次二级C语言考试

第二十一次C

软件技术基础

第一部分共15分

一、是非判断题(每小题1分,共10分)

1.应用程序在执行过程中,需要通过打印机输出数据时,一般先形成一个打印作业,将其存放在硬盘中的一个指定队列中,当打印机空闲时,就会按先来后服务的方式从中取出待打印的作业进行打印。

()

2.若无进程处于运行状态,则就绪队列和等待队列均为空。

()

3.多道程序设计是指在一台处理机上并发运行多个程序。

()

4.黑盒法是软件测试方法中的静态测试方法之一。

()

5.软件的详细设计就是要编写出具体的程序。

()

6.软件生命周期中花费最多的阶段是软件维护。

()

7.indows是单用户多任务操作系统,UNIX是多用户多任务操作系统。

()

8.进程把程序作为它的运行实体,没有程序也就没有进程。

()

9.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:

结构化语言,判定表和判定树。

()

10.作业调度程序从后备队列中选一个作业装入主存后,决定能否占用处理机的是设备调度程序。

()

二.单项选择题(1分/小题,共5分)

1.交换技术是在()之间交换程序和数据

A主内存与CPUBCPU与外设

C主内存与外存D外存与CPU

2.以下的工具中哪个不是软件详细设计中使用的工具

A数据流图BN-S图

CPDA图DPDL语言

3.任何两个并发进程之间()

A一定存在互斥关系B一定存在同步关系

C一定彼此独立无关D可能存在同步或互斥关系

4.进程从运行状态进入就绪状态的原因可能是()

A被选中占有处理机B等待某一事件

C等待的事件已发生D时间片用完

5.算法指的是()

A计算机程序B解决问题的有限运算序列

C排序算法D解决问题的计算方法

第二部分

C与C++语言程序设计

(共85分)

一、单项选择题(每小题1分,共10分)

1.以下程序运行后,输出结果是()C

main()

{inta=1,b=2,m=0,n=0,k;

k=(n=b>a)||(m=a

printf(“%d,%d\n”,k,m);

}

A0,0B0,1C1,0D1,1

2.以下程序输出的结果是()B

main()

{intm=5;

if(m++>5)

printf(“%d”,m++);

else

printf(”%d”,m--);

}

A7B6C5D4

3.下列程序运行的结果是()。

B

main()

{inta=10,b=11,c=12,d;

printf(“%d\n”,a>c?

a:

c?

d=a>b:

b);

}

A11B0C10D12

4.已知:

inta,b;下列switch语句中,()是正确的。

B

Aswitch(a)Bswitch(a+b)

{{

casea:

a++;break;case1:

a++;

caseb:

b++;break;case2:

b++;

}}

Cswitch(a*b)Dswitch(a/10+b)

{{

case1,2:

a+b;casea+b:

++a;break;

case3,4:

a-b;casea-b:

--b;

}}

5.下列程序由两个文件f1.c和f2.c组成。

F1.文件的内容:

#include

#include”f2.c”

#defineN3

main()

{intI;

for(I=1;I<=N;I++)

printf(“%d,”,sum(I));

}

f2.c文件的内容:

sum(intn)

{intt;

staticints=0;

for(t=1;t<=n;t++)

s+=t*t;

return(s);

}

程序的输出结果是()。

C

A1,5,14,B1,2,3,C1,6,20,D1,4,9

6、C++中,有以下定义:

inta,b;若要从键盘输入变量a,b的值,则正确的输入语句是()。

A

Acin>>a>>b;Bcin<

Ccout>>a>>b;Dcout<

7.下列程序运行的结果是()。

A

#include

#defineswap(x,y){x^=y;y^=x;x^=y;}

main()

{

inta=010,b=1;

swap(a,b);

printf(“%d,%d\n”,a,b);

}

A1,8B8,1C10,1D10,1

8.以下scanf函数调用中对结构变量成员的错误引用是()。

C

structstudent

{charname[20];

intage;

intsex;

}stud[5],*p;

p=stud;

Ascanf(“%s”,stud[0].name);Bscanf(“%d”,&stud[0].age);

Cscanf(“%d”,p->age);Dscanf(“%d”,&(p->sex));

9.在以下关于C++构造函数的描述中,错误的是()D

A构造函数可以重载

B构造函数可以带缺省参值

C构造函数名必须与类同名

D构造函数可以带回返回值

10.下面对C++函数重载的描述中,错误的是()D

A函数名相同

B函数参数个数或参数类型至少有一个不同

C函数参数不可以用缺省值

D函数返回值必须不同

二读程序回答问题(每个选择3分,共45分)

1.下列程序运行的结果为()。

D

#include

voidfun(char*c,intd)

{*c=*c+1;

d=d+1;

prinf(“%c,%c,”,*c,d);

}

main()

{chara=’A’,b=’a’;

fun(&b,a);

printf(“%c,%c\n”,a,b);

}

AB,a,B,aBa,B,a,BCA,b,A,bDb,B,A,b

2.下面程序的输出是(  )。

A

#include

voidtest(int*u,int*v)

{int*w;

w=u;u=v;v=w;

}

main()

{intm=3,n=6,*x=&m,*y=&n;

test(x,y);

printf(“%d%d”,m,n);

}

A36B63C00D编译出错

3.以下程序的输出结果是(  )。

A

#include

main()

{intx,y;

for(x=1,y=1;x<=15;x++)

{if(y>20)

break;

if(y%3==1)

{y+=3;

continue;

}

y-=10;

}

printf(“%d,%d\n”,x,y);

}

A8,22B7,20C6,22D5,20

4.fun(char*t1,char*t2)

{intI,j;

while(*t2!

=0)

{

for(I=0,j=0;t1[I];I++)

if(t1[I]!

=*t2)

t1[j++]=t1[I];

t1[j]='\0';

t2++;

}

}

main()

{chara[]="abcde",b[]="ae";

fun(a,b);

puts(a);

}

该程序的输出结果为(  )。

B

A abcdeBbcdCabcdeaeDae

5.以下程序的输出结果是(  )。

B

#include

#defineFUN(y)2.84+y

#definePR(a)printf(“%d”,(int)(a))

#definePRINT(a)PR(a);putchar(‘\n’)

mani()

{

intx=2;

PRINT(FUN(5)*x);

}

A11B12C14D15

6.读下列程序,回答问题。

#include

voidsort(inta[])

{

inti,j,t;

for(i=0;j<4;I++)

for(j=0;j<4-i;j++)

if(a[j]>a[j+1])

{t=a[j];a[j]=a[j+1];a[j+1]=t;}

}

voidmain()

{inta[5]={5,10,-7,3,7},i,t,j;

sort(a);

for(I=0,I<=4;I++)printf(“%d\n”,a[i]);

}

关于程序的说法正确的是(  )。

C

A 用选择法对数据按从小到大排列

B 用选择法对数据按从大到小排列

C 用冒泡法对数据按从小到大排列

D 用冒泡法对数据按从大到小排列

7.执行下面程序时输入“Iwillpasstheexam!

“,其输出结果是()。

如果将程序中的scanf(“%s”,s)改为gets(s);同样输入“Iwillpasstheexam!

“,则程序的输出结果是()。

C,B

#include

intfun(chars[])

{inti=0;

while(s[i]!

='\0')

i++;

returni;

}

voidmain()

{chars[81];

printf("pleaseinputastring\n");

scanf("%s",s);

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

}A5B21C1D17

A5B21C1D17

8.以下是一个C++程序

#include

classSample

{intx,y;

public:

Sample(){x=y=0;}

Sample(inta,intb){x=a;y=b;}

voiddisp()

{cout<<"x="<

};

voidmain()

{Samples1,s2(2,3);

s1.disp();

s2.disp();

}

(1)该程序主函数中s1.disp()的输出为()。

A

Ax=0y=0Bx=2y=3Cx=3y=2Dx=1y=1

(2)该程序主函数中s2.disp()的输出为()。

B

Ax=1y=0Bx=2y=3Cx=3y=2Dx=1y=1

9.读下列程序并回答问题。

#include

voidfun(int*p,inti,intj)

{

staticintme=0;

intt;

me++;

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

if(i

{t=*(p+i);*(p+i)=*(p+j);*(p+j)=t;

fun(p,++i,--j);

}

}

main()

{

inta[]={1,2,3,4,5,6},i;

fun(a,0,5);

for(i=0;i<6;i++)

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

}程序中的fun函数被调用()次。

C

A6B5C4D3

(2)程序的运行结果为()。

D

A123456B456123C135246D654321

10.读程

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

当前位置:首页 > 表格模板 > 合同协议

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

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