《2022年计算机等级考试二级语言程序设计历年真题与模拟试题详解.doc》由会员分享,可在线阅读,更多相关《2022年计算机等级考试二级语言程序设计历年真题与模拟试题详解.doc(786页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、全国计算机等级考试二级C语言程序设计历年真题与模拟试题详解最新资料,WORD格式,可编辑修改!目录第一部分历年真题及详解52016年3月全国计算机等级考试二级C语言程序设计真题及详解52015年9月全国计算机等级考试二级C语言程序设计真题及详解182015年3月全国计算机等级考试二级C语言程序设计真题及详解332014年9月全国计算机等级考试二级C语言程序设计真题及详解482014年3月全国计算机等级考试二级C语言程序设计真题及详解622013年9月全国计算机等级考试二级C语言程序设计真题及详解762013年3月全国计算机等级考试二级C语言程序设计真题及详解912012年9月全国计算机等级考试
2、二级C语言程序设计真题及详解1062012年3月全国计算机等级考试二级C语言程序设计真题及详解1212011年9月全国计算机等级考试二级C语言程序设计真题及详解1352011年3月全国计算机等级考试二级C语言程序设计真题及详解1492010年9月全国计算机等级考试二级C语言程序设计真题及详解1652010年3月全国计算机等级考试二级C语言程序设计真题及详解1802009年9月全国计算机等级考试二级C语言程序设计真题及详解1952009年3月全国计算机等级考试二级C语言程序设计真题及详解2092008年9月全国计算机等级考试二级C语言程序设计真题及详解224第二部分模拟试题及详解239全国计算机
3、等级考试二级C语言程序设计模拟试题及详解(一)239全国计算机等级考试二级C语言程序设计模拟试题及详解(二)255第一部分历年真题及详解2016年3月全国计算机等级考试二级C语言程序设计真题及详解(考试时间120分钟 满分100分)一、选择题(每题1分,共40分)1有以下定义:struct dataint i;char c;double d;x;以下叙述中错误的是( )。Ax的内存地址与x.i的内存地址相同Bstruct data是一个类型名C初始化时,可以对x的所有成员同时赋初值D成员i、c和d占用的是同一个存储空间【答案】D【解析】变量i、c、d是结构体变量x中三个不同的成员,占用不同的存
4、储空间。2以下函数的功能是:计算a的n次方作为函数值返回。double fun(double a,int n)int i;double s=1.0;for(i=1;i=n;i+)s= ;return s;为实现上述功能,函数中下划线处应填入的是( )。As*iBs*aCs+i*iDs+a*a【答案】B【解析】s为a的(i-1)次方的结果,所以令s=s*a即可得到a的i次方。3有以下程序:#include#includemain()char str =Hello,Beijing;printf(%d,%dn,strlen(str),sizeof(str);程序的运行结果是( )。A13,13B13
5、,14C13,15D14,15【答案】B【解析】strlen返回字符串的长度,不包含字符串末尾的结束字符0,结果为13;sizeof返回字符串所占存储空间的大小,由于字符串最后要加上一个0,所以结果为13+1=14。4若有说明:typedef structint a;char c;w;,则以下叙述正确的是( )。A编译后系统为w分配5个字节B编译后系统为w分配6个字节C编译后系统为w分配8个字节D编译后系统不为w分配存储空间【答案】D【解析】w是一个自定义类型,不是变量,故编译后系统不为w分配存储空间。当w定义为结构体变量时才会为其分配存储空间。5以下叙述中错误的是( )。A同一个数组中所有元
6、素的类型相同B不可以跳过前面的数组元素,给后面的元素赋初值0C定义语句:int a10=0;,给a数组中所有元素赋初值0D若有定义语句:int a4=1,2,3,4,5;,编译时将忽略多余的初值【答案】D【解析】数组初始化时,若赋初值的个数多于所定义数组的元素个数时,编译器会报错。6若有以下定义:struct ttchar name10;char sex;aa=aaaa,F,*p=&aa;则错误的语句是( )。Ascanf(%c,aa.sex);Baa.sex=getchar( );Cprintf(%cn,(*p).sex);Dprintf(%cn,p-sex);【答案】A【解析】sex是一个
7、char类型变量,不是地址,A项应为scanf(%c,&aa.sex);。7C语言编译程序的功能是( )。A执行一个C语言编写的源程序B把C源程序翻译成ASCII码C把C源程序翻译成机器代码D把C源程序与系统提供的库函数组合成一个二进制执行文件【答案】C【解析】编译程序的功能是将“高级语言”翻译为“机器语言”,将C语言语句转换成二进制的机器指令。8有以下程序:#includeint fun(int n)if(n)return fun(n-1)+n;else return 0;main( )printf(%dn,fun(3);程序的运行结果是( )。A4B5C6D7【答案】C【解析】fun函数是
8、一个递归函数,调用f(3),参数n=3,返回f(3-1)+3=f(2)+3=f(1)+2+3=f(0)+1+2+3=0+6=6。9有以下程序:#includemain( )int sum=0,x=5;dosum+=x;while(!-x);printf(%dn,sum);程序的运行结果是( )。A0B5C14D15【答案】B【解析】do-while循环,先执行循环体sum+=x,则sum=sum+x=0+5=5,再执行while中的表达式,结果为0,退出循环,所以运行结果是5。10下面不属于软件设计阶段任务的是( )。A软件的功能确定B软件的总体结构设计C软件的数据设计D软件的过程设计【答案】
9、A【解析】软件设计阶段的任务包括:结构设计;数据设计;接口设计;过程设计。软件的功能确定是在需求分析阶段完成的。11有以下程序:#include#includetypedef structchar name9;char sex;float score2;STU;void f(STU*a)strcpy(a-name,Zhao);a-sex=m;a-score1=90.0;main( )STU c=Qian,f,95.0,92.0,*d=&c; f(d);printf(%s,%c,%2.0f,%2.0fn,d-name,c.sex,c.score0,c.score1);程序的运行结果是( )。AQ
10、ian,f,95,92BZhao,f,95,90CZhao,m,95,90DZhao,f,95,92【答案】C【解析】f函数调用时,结构体数组名作为实参传给形参指针,结构体指针a指向数组c的首地址。因此,f可以对数组c中的元素赋值,故返回主函数之后,数组c中的成员值已被更新。main函数中有赋值语句*d=&c;,指针d指向结构体数组c的首地址,故d-name=c.name,输出结果为Zhao,m,95,90。12在C语言程序中,下列说法正确的是( )。A函数的定义可以嵌套,但函数的调用不可以嵌套B函数的定义不可以嵌套,但函数的调用可以嵌套C函数的定义和调用均不可以嵌套D函数的定义和调用均可以嵌
11、套【答案】B【解析】函数定义都是在函数外部进行的,函数调用是在函数内部进行的,所以函数的定义不可以嵌套,但函数的调用可以嵌套。13执行以下程序段后,s的值为( )。int a =1,2,3,4,5,6,7,8,9,s=0,k;for(k=0;k8;k+=2)s+=*(a+k);A13B16C17D45【答案】B【解析】数组a中的元素为:a0=1,a1=2,a8=9。k=0时,s=s+*(a+0)=0+1=1;k=2时,s=1+*(a+2)=1+3=4;k=4时,s=4+5=9;k=6时,s=9+7=16。14有以下程序:#include#define M 5#define f(x,y) x*y
12、+Mmain( )int k;k=f(2,3)*f(2,3);printf(%dn,k);程序的运行结果是( )。A22B41C100D121【答案】B【解析】宏定义中的函数在调用时只做简单的替换,不能进行任何修改。所以k=2*3+5*2*3+5=41。15有以下程序:#includemain( )char ch=Z;ch=(ch-A+1)%26+A;putchar(ch);程序的运行结果是( )。AZBYCBDA【答案】D【解析】Z的ASCII码是90,A的ASCII码是65,所以ch=(ch-A+1)%26+A=26%26+65=65,输出65对应的字符A 。16下面属于黑盒测试方法的是(
13、 )。A基本路径测试B等价类划分C判定覆盖测试D语句覆盖测试【答案】B【解析】等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据(有效的和无效的)划分成若干个等价类进行测试。基本路径测试、判定覆盖测试和语句覆盖测试都属于白盒测试。17有以下程序:#includemain( )int i,j,k,a=5,b=6;i=(a=b)?+a:-b;j=a+;k=b;printf(%d,%d,%dn,i,j,k);程序的运行结果是( )。A7,6,5B5,5,5C7,5,5D5,6,5【答案】B【解析】条件表达式i=(a=b)?+a:-b;中先执行a=b,值为假,根据三元运算符语法规
14、则,执行-b,此时b为5,赋给i,i=5;j=a+,将a=5先赋给j,再进行a+,j=5,a=6,k=b=5,故最后输出的是5,5,5。18C语言程序中,若函数无返回值,则应该对函数说明的类型是( )。AintBdoubleCcharDvoid【答案】D【解析】int表示返回值是整型,double表示返回值是双精度型,char表示返回值是字符型,void表示无返回值。19有以下程序:#includemain( )int k,n=0;char c,str=teach;for(k=0;strk;k+)c=strk;switch(k)case 1:case 3:case 5:putchar(c);p
15、rintf(%d,+n);break;default:putchar(N);序的运行结果是( )。ANe1NNBe1a2e3CNe1Nc2NDNa1NNNN【答案】C【解析】程序执行过程:k=0时,c=str0=t,执行default分支,输出N;k=1时,c=e,执行case 1分支,没有break语句,继续执行case 3分支,没有break语句,继续执行case 5分支,输出e1;k=2时,c=a,输出N;k=3,c=c,输出c2;k=4,c=h,输出N。故程序的输出结果为Ne1Nc2N。20有以下程序:#includevoid fun(char(*p)6)int i;for(i=0;i
16、4;i+)printf(%c,pii);printf(n);main( )char s66=ABCDE,abcde,12345,FGHIJ,fghij,54321;fun(s); 程序的运行结果是( )。AAa1FBAb3ICABCDDfghij【答案】B【解析】函数fun的功能是输出sii,二维数组的对角线元素,所以程序会输出s00、s11、s22、s33,即Ab3I。21设变量x为long int型并已正确赋值,以下表达式中能将x的百位上的数字提取出的是( )。Ax/10%100Bx%10/100Cx%100/10Dx/100%10【答案】D【解析】x/100的个位数是x的百位数上的数字,
17、所以再进行除10取余运算即可得到该数字。22在E-R图中,表示实体的图形是( )。A矩形B椭圆C菱形D圆【答案】A【解析】在E-R图中,矩形表示实体集,矩形内写该实体集的名字。23下面对软件特点描述不正确的是( )。A软件是一种逻辑实体,具有抽象性B软件开发、运行对计算机系统具有依赖性C软件开发涉及软件知识产权、法律及心理等社会因素D软件运行存在磨损和老化问题【答案】D【解析】与硬件不同,软件在运行、使用期间不存在磨损、老化问题。24设x,y,z均为实型变量,代数式在C语言中的正确写法是( )。Ax/y*zBx%y%zCx/y/zDx*z/y【答案】C【解析】运算符、/的结合顺序是从左到右,所
18、以x先除以y,再除以z。25有以下程序:#include#define N 4void fun(int a N,int b )int i;for(i=0;iN;i+)bi=aiN-1-i;main()int xNN=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,yN,i;fun(x,y);for(i=0;iN;i+)printf(%d,yi);printf(n);程序的运行结果是( )。A1,2,3,4,B3,6,9,12,C4,7,10,13,D1,5,9,13,【答案】C【解析】调用fun函数,yi=xiN-1-i,N=4,x是4行4列的二维数组。i=0时,
19、y0= x04-1=x03=4;i=1时,y1=x14-1-1=x12=7;i=2时,y2=x24-1-2=x21=10;i=3时,y3=x30=13。26在下列链表中,能够从任意一个结点出发直接访问到所有结点的是( )。A单链表B循环链表C双向链表D二叉链表【答案】B【解析】线性单链表,必须从头指针开始,才能访问到所有的结点;循环链表的最后一个结点的指针域指向表头结点,所有结点的指针构成了一个环状链,只要指出表中任何一个结点的位置就可以从它出发访问到表中其他所有的结点;双向链表头结点和尾结点之间没有链接,所以如果从中间结点开始访问无法直接访问到所有结点;二叉链表从除根结点之外的任意一个结点出
20、发无法直接访问到所有结点。27有以下程序:#includemain( )int i,j,x=0;for(i=0;i2;i+)x+;for(j=0;j=3;j+)if(j%2=0)continue;x+;x+;printf(x=%dn,x);程序的运行结果是( )。Ax=4Bx=6Cx=8Dx=12【答案】C【解析】第一次循环:i=0,执行x+后x=1,执行内层循环j=0,由于j%2!=0时才执行x+,即只有j取1和3时,执行x+,此时x=1+1+1=3,跳出内层循环,执行下一条x+,x=4,第二次循环:x=1时,重复上述循环,共执行两次循环,故x最终结果是4*2=8。28对图书进行编目时,图书
21、有如下属性:ISBN书号,书名,作者,出版社,出版日期。能作为关键字的是( )。AISBN书号B书名C作者,出版社D出版社,出版日期【答案】A【解析】关键字是指能惟一标识元组的属性或属性集合。书号可以惟一标识一本图书,本题中,书名、作者、出版社、出版日期等字段都不能惟一标识一本图书。29若主函数中有定义语句:int a10,b10,c;,在主函数前定义的fun函数首部为:void fun(int x ),则以下选项中错误的调用语句是( )。Afun(b);Bfun(&c);Cfun(&a3);Dfun(b11);【答案】D【解析】fun函数的形式参数为一个数组,需要实参为一个地址,而b11是一
22、个整型元素,参数类型不一致,且b11已经溢出,所以D项错误。30构成C语言程序的三种基本结构是( )。A顺序结构、转移结构、递归结构B顺序结构、嵌套结构、递归结构C顺序结构、选择结构、循环结构D选择结构、循环结构、嵌套结构【答案】C【解析】C语言程序是结构化程序,由三种基本结构组成:顺序结构;选择结构;循环结构。31下列形式中不合法的常量是( )。A2.E8B-.28C-028D2e-8【答案】C【解析】0开头表示的是八进制整型常量,八进制数只能用07的数字表示。32下列与栈结构有关联的是( )。A数组的定义域使用B操作系统的进程调度C函数的递归调用D选择结构的执行【答案】C【解析】函数的递归
23、调用是指函数调用函数本身,直到满足特定条件时终止,然后从最后被递归调用处返回。递归函数是通过栈来实现的,所以调用原则和栈的实现相一致。33以下不是C语言字符型或字符串常量的是( )。AItsB0Ca=0D010【答案】C【解析】C项是一个赋值表达式。AB两项是字符串常量,D项是字符常量。 34下列数据结构中,属于非线性结构的是( )。A双向链表B循环链表C二叉链表D循环队列【答案】C【解析】线性结构的特点:除了首结点和尾结点外,每一个结点只有一个前驱结点和一个后继结点。线性表、栈、队列都是线性结构,循环链表和双向链表是线性表的链式存储结构;带链的栈是栈的链式存储结构。二叉链表是二叉树的链式存储
24、结构,二叉树是非线性结构,所以二叉链表是非线性结构。35有以下程序:#includemain()int k=10;printf(%4d,%o,%xn,k,k,k);程序的运行结果是( )。(代表一个空格)A10,12,aB10,012,aC010,12,aD10,12,a【答案】D【解析】%4d表示输出占4个字符的十进制,故先输出2个空格,然后输出10;%o表示输出八进制,所以输出10的八进制为12;%x表示输出十六进制,即a。36数据库管理系统是( )。A操作系统的一部分B系统软件C一种编译系统D一种通信软件系统【答案】B【解析】系统软件主要包括:操作系统软件;各种语言的解释程序和编译程序;
25、各种服务性程序;各种数据库管理系统。37若有定义:int a=1,b=2,c=3;,则执行表达式(a=b+c)(+b)后,a,b,c的值依次为( )。A1,2,3B5,3,2C5,2,3D5,3,3【答案】C【解析】| 表示或运算,当第一个表达式为真时,第二个表达式不执行。根据运算符的优先级规则,先计算(a=b+c),将b+c的值赋值给a,则a=5,而 | 右边的括号不会被执行,所以b=2,c=3。38有两个关系R和T如下:则由关系R得到关系T的操作是( )。A选择B交C投影D并【答案】C【解析】关系 T是由关系R的第1、3列的元组组成,这是对关系R进行投影运算的结果。可以简单理解为:选择运算
26、是对行的操作,投影运算是对列的操作。39设有:char s5,c;,则调用函数scanf能正确给s和c读入数据的是( )。Ascanf(%s%c,s,c);Bscanf(%d%c,&s,&c);Cscanf(%d%c,s,&c);Dscanf(%s%c,s,&c);【答案】D【解析】s5中放的是字符串,故输入的类型应该是%s;变量c中放的是字符,故输入的类型是%c。要正确读入数据必须要使用s和c的地址,而s代表就是字符数组的首地址。40若变量已正确定义并赋值,则错误的赋值语句是( )。Aa+=a+1;Ba=sizeof(double);Ca=dc;Da+1=a;【答案】D【解析】赋值号“=”的
27、左边必须是一个变量名,不可以是表达式。二、程序填空题(共18分)下列给定的程序中,函数fun()的功能是:求出以下分数序列的前n项和。2/1,3/2,5/3,8/5,13/8,21/13,和值通过函数值返回main()函数。例如,若输入n=5,则应输出8.391667。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。【试题源程序】#include#includedouble fun(int n)int a=2,b=1,c,k;double【1】;for(k=1;k=n;k+)s=s+1.0*a/b;c=a;a+=【2】;b=c;retur
28、n(s);main( )int n=5;printf(nThe value of function is:%lfn,【3】);答:【1】s=0.0【2】b【3】fun(n)【解析】填空【1】:此处要对变量s进行声明,因为后面有对s的累加操作,所以s一定要进行初始化,即s=0.0。填空【2】:此处是循环求和,由数列可以看出后一项分数的分子是前一项分母与分子之和,即a=a+b或者a+=b。填空【3】:此处进行子函数调用。三、程序修改题(共18分)给定程序中函数fun的功能是:根据整型形参m,计算如下公式的值。y=1+例如,若m中的值为:5,则应输出:1.463611。请改正程序中的错误,使它能得到
29、正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。【试题源程序】#includedouble fun(int m)double y=1.0;int i;/*found*/for(i=2;im;i+)/*found*/y+=1/(i*i);return(y);main( )int n=5;printf(nThe result is %lfn,fun(n);答:(1)错误:for(i=2;im;i+)正确:for(i=2;i=m;i+)(2)错误:y+=1(i*i)正确:y+=1.0(i*i)【解析】错误(1):使用for循环计算公式取到m时,最后一次循环应该等于m,所以
30、im应改为i=m。错误(2):在除法运算中,如果除数和被除数都是整数,那么所除结果也是整数,因此需要对结果进行强制转换或者将除数或被除数其中一个整型常量变为浮点型常量。四、程序设计题(共24分)请编写函数fun(),该函数的功能是:移动一维数组中的内容,若数组中有n个整数,要求把下标从pn-1(pn-1)的数组元素平移到数组的前面。例如,一维数组中的原始内容为1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,p的值为6。移动后,一维数组的内容应为7,8,9,10,11,12,13,14,15,1,2,3,4,5,6。注意:请勿改动主函数main和其他函数中的任何内容,仅在
31、函数fun的花括号中填入所编写的若干语句。【试题源程序】#include#define N 80void fun(int *w,int p,int n)main()int aN=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15;int i,p,n=15;printf(The original data:n);for(i=0;in;i+)printf(%3d,ai);printf(nnEnter p:);scanf(%d,&p);fun(a,p,n);printf(nThe data after moving:n);for(i=0;in;i+)printf(%3d,ai);
32、printf(nn);答:void fun(int*w,int p,int n)int i,j,t;for(i=p;i=0;j-)wj+1=wj;w0=t;【解析】本题采用“循环右移”的算法。2015年9月全国计算机等级考试二级C语言程序设计真题及详解(考试时间120分钟 满分100分)一、选择题(每题1分,共40分)1下列叙述中正确的是( )。A所有数据结构必须有根结点B所有数据结构必须有终端结点(即叶子结点)C只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构D没有根结点或没有叶子结点的数据结构一定是非线性结构【答案】D【解析】D项正确,线性结构的特点是:集合中必存在“第一个元素”
33、且惟一;集合中必存在“最后一个元素”且惟一;除最后一个元素外,其他数据元素均有惟一的“后继”;除第一个元素外,其他数据元素均有惟一的“前驱”。所以没有根结点或没有叶子结点的数据结构一定是非线性结构。AB两项错误,不是所有数据结构都必须有根结点和叶子结点;C项错误,数据结构中若有中间结点不满足只有一个前件或者后件的条件,就不是线性结构。2以下叙述中错误的是( )。AC语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令BC程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件C用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中DC语言源程序经编译
34、后生成后缀为.obj的目标程序【答案】A【解析】A项错误,注释语句不会被翻译成二进制的机器指令。C源程序经过C编译程序编译之后生成后缀为.obj的二进制文件(称为目标文件),然后由“链接程序”(Link)的软件把.obj文件与各种库函数连接起来生成一个后缀为.exe的可执行文件。3C语言主要是借助以下( )功能来实现程序模块化的。A定义函数B定义常量和外部变量C三种基本结构语句D丰富的数据类型【答案】A【解析】C程序的模块化主要通过函数来实现。C语言允许对函数单独进行编译,从而可以实现模块化。4有以下程序段:char ch; int k;ch=a; k =12;printf(%c,%d,ch,
35、ch,k); printf(k=%dn,k);已知字符a的ASCII码十进制值为97,则执行上述程序段后输出的结果是( )。A因变量类型与格式描述符的类型不匹配,输出无定值B输出项与格式描述符个数不符,输出为零值或不定值Ca,97,12k=12Da,97,k=12【答案】D【解析】字符变量的值是该字符的ASCII码值,可以参与整型变量所允许的任何运算。“ch=a”,c表示以字符格式输出ch的值,所以输出为a;d表示以十进制代码的形式输出ch的值,为97;k没有对应的输出格式,不输出。在第二个语句中,首先输出“k=”,然后以十进制代码输出k的值,为12。5下列叙述中正确的是( )。A栈是“先进先
36、出”的线性表B队列是“先进后出”的线性表C循环队列是非线性结构D有序线性表既可以采用顺序存储结构,也可以采用链式存储结构【答案】D【解析】有序的线性表既可采用顺序存储结构,也可以采用链式存储结构。A项错误,栈是“先进后出”的线性表;B项错误,队列是“先进先出”的线性表;C项错误,循环队列是线性结构的,有序的线性表既可采用顺序存储结构,也可采用链式存储结构。6若要实现total=1+2+3+4+5求和,以下程序段错误的是( )。Aint i=1,total=1;while(i5) total +=i;i+=1;Bint i=1,total=0;while(i=5) total +=i;i+=1;
37、Cint i=0,total=0;while(i5) i +=1;total+=i;Dint i=0,total=0;while(i=5) total +=i;i+=1; 【答案】A【解析】A项执行过程为:i=1,total=1,判断while循环条件15成立,total=1+1,i=2;判断循环条件执行函数体,直到i=4,total=1+1+2+3+4,i=5;i=5循环条件不成立,退出循环,A项不能实现题目要求,错误。B项执行过程:i=1,total=0,1=5成立,total=0+1=1,i=2;直到i=5,total=1+2+3+4+5,i=6;i=6条件不成立,退出循环,程序正确。C
38、项执行过程:i=0,total=0,05成立,i=1,total=1;直到i=5,total=1+2+3+4+5;i=5条件不成立,退出循环,程序正确。D项执行过程:i=0,total=0,0=5成立,total=0,i=1;直到i=5,total=1+2+3+4+5,i=6;i=6条件不成立,退出循环,程序正确。7下列不属于软件工程3个要素的是( )。A工具B过程C方法D环境【答案】D【解析】软件工程是指用工程的方法来构建和维护软件,其要素包括:方法,用于完成软件工程项目的技术手段;工具,用于支持软件的开发、管理、文档生成;过程,用于支持软件开发的各个环节的控制、管理。8下面不属于黑盒测试方
39、法的是( )。A边界值分析法B基本路径测试C等价类划分法D错误推测法【答案】B【解析】常见的黑盒测试方法有:等价类划分法、边界值分析法、错误推测法以及因果图等;常见的白盒测试方法有:逻辑覆盖测试和基本路径测试。9有三个关系R、S和T如下:则下列操作中正确的是( )。AT=RSBT=RSCT=RS DT=R-S【答案】D【解析】图中关系R比关系S多一行T中的元组,故由关系R和S得到关系T的操作是差。10下列选项中,不属于数据管理员(DBA)职责的是( )。A数据库维护B数据库设计C改善系统性能,提高系统效率D数据类型转换【答案】D【解析】数据库管理员对数据库进行规划、设计、维护、监视等,其主要工作有:数据库设计,主要是对数据模式进行设计;数据库维护,对数据库中的数据安全性、完整性、并发控制及系统恢复、数据定期转储等进行实施与维护;改善系统性能,不断调整内部结构,提高系统效率。11有以下程序#include main()int a=0,b=0;/*给a赋值a=10;b=20;给b赋值*/printf(a+b=%dn,a+b);/*输出计算结果*/程序运行后的输出结果是( )。Aa+b=0Ba+b=30Ca+b=10