欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】二级C语言分类模拟题509及答案解析.doc

    • 资源ID:1325538       资源大小:85KB        全文页数:18页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】二级C语言分类模拟题509及答案解析.doc

    1、二级 C 语言分类模拟题 509 及答案解析(总分:49.50,做题时间:90 分钟)一、选择题(总题数:35,分数:49.50)1.对下述程序的判断中,正确的是 _ 。 #includestdio.h void main() char *P,s256; p=s; while(strcmp(s,“the end“) printf(“Input the string:“); gets(s); while(*P) putchar(*p+);(分数:2.00)A.此程序循环接收字符串并输出,直到接收到字符串“the end”为止B.此程序循环接收字符串,接收到字符串“the end”则输出,否则程序

    2、终止C.此程序循环接收字符串并输出,直到接收字符串“the end”为止,但因为代码有错误,程序不能正常工作D.此程序循环接收字符串并将其连接在一起,直到接收字符串“the end”为止,输出连接在一起的字符串2.数据库系统的核心是_。(分数:2.50)A.数据模型B.数据库管理系统C.数据库D.数据库管理员3.有以下程序: # include stdio.h void fun(char *c) while(*c) if(*c=“a“*c=“z“)*c=*c-(“a“-“A“); c+; main() char s81; gets(s); fun(;) puts(s); 当执行程序时从键盘输入

    3、 Hello Beijing回车,则程序的输出结果是_。(分数:1.00)A.hello beijingB.Hello BeijingC.HELLO BEIJINGD.hELLO Beijing4.在软件开发中,需求分析阶段产生的主要文档是_。(分数:1.50)A.可行性分析报告B.软件需求规格说明书C.概要设计说明书D.集成测试计划5.设有定义:char s81;int i=0;,以下不能将一行(不超过 80 个字符)带有空格的字符串正确读入的语句或语句组是_。(分数:1.00)A.while(si+=getchar()!=“/n“);si=“/0“;B.scanf(“%s“,s);C.ge

    4、ts(s);D.doscanf(“%c“,while(si+!=“/n“);si=“/0“;6.设有一联合体变量定义如下: union data long a; float b; int c; char d; ; union data x; 执行下列语句后,正确的联合体变量 x 的值是_。 x.a=111111; x.b=2222; x.c=2.1546; x.d=“R“;(分数:2.50)A.111111B.2222C.2.1546DR7.设有两行定义语句: int scanf; float case; 则以下叙述正确的是_。(分数:1.00)A.两行定义语句都不合法B.两行定义语句都合法C

    5、.第 1 行语句不合法D.第 2 行语句不合法8.有如下嵌套的 if 语句: if(ab) if(ac)k=a; else k=c; else if(bc)k=b; else k=c; 以下选项中与上述 if 语句等价的语句是_。(分数:1.00)A.k=(ab)?(bc)?a:b):(bc)?b:c);B.k=(ab)?(ac)?a:c):(bc)?b:c);C.k=(ab)?a:b;k=(bc)?b:c;D.k=(ab)?a:b;k=(ac)?a:c;9.下列选项中,不属于模块间耦合的是(分数:2.00)A.数据耦合B.标记耦合C.异构耦合D.公共耦合10.有以下程序 #includest

    6、dio.h void fun(int a,int n,int flag) int i=0,j,t; for(i=0;in-1;i+) for(j=i+1;jn;j+) if(flag) if(aiaj) t=ai;ai=aj;aj=t; else if(aiaj) t=ai;ai=aj;aj=t; main() int c10=7,9,10,8,3,5,1,6,2,4,i; fun(c,10,0); fun(c,5,1); for(i=0;i10;i+) printf(“%d,“,ci); 程序运行结果正确的是_。(分数:1.00)A.6,7,8,9,10,5,4,3,2,1,B.5,4,3,

    7、2,1,6,7,8,9,10,C.6,7,8,9,10,1,2,3,4,5,D.1,2,3,4,5,6,7,8,9,10,11.以下不能定义为用户标识符的是_。(分数:1.00)A.scanfB.VoidC._3comD.int12.以下程序的输出结果是_。 #includestdio.h main() int a=5,b=4,c=6,d; printf(“%d/n“,d=ab?(ac?a:c):(b); (分数:1.00)A.5B.4C.6D.不确定13.有以下程序: #includestdio.h main() char a=3,b=6,c; c=(ab)2; printf(“%d/n“,

    8、c); 程序运行后的输出结果是_。(分数:1.00)A.5B.1C.20D.1814.一名工作人员可以使用多台计算机,而一台计算机可被多名工作人员使用,则实体工作人员与实体计算机之间的联系是_。(分数:1.00)A.一对一B.一对多C.多对多D.多对一15.有以下程序 #includestdio.h #includestring.h typedef struetchar name9; char sex; float score2;STU; STUf(STU a) (STU b=“Zhao“, “m“, 85.0, 90.0; int i; strcpy(a.name, b.name); a.s

    9、ex=b.sex; for(i=0; i2; i+)a.scorei=b.scorei; return a; main() (STU c=“Qian“, “f“, 95.0, 92.0, d; d=f(c); printf(“%s, %c, %2.0f, %2.0f/n“, d.name, d.sex, d.score0, d.score1); 程序的运行结果是_。(分数:2.00)A.Qian, m, 85, 90B.Zhao, m, 85, 90C.Qian, f, 95, 92D.Zhao, f, 95, 9216.设有以下语句: int a=1, b=2, c; c=a(b2); 执行

    10、后,c 的值为( )。(分数:1.00)A.7B.9C.8D.617.以下运算符中优先级最高的运算符是_。(分数:1.00)A.+B.?:C.!=D. int v4=0, 0, 0, 0, k, i; for(k=0; sk; k+) switch(sk) case “1“: i=0; case “2“: i=1; case “3“: i=2; case “4“: i=3; vi+; for(k=0; k4; k+)printf(“%d“, vk);(分数:2.50)A.4 2 1 0B.0 0 0 8C.4 6 7 8D.8 8 8 822.若 ch 为 char 型变量,k 为 int 型

    11、变量(已知字符 a 的 ASCII 码是 97),则执行下列语句后输出的结果为_。 ch=“b“; k=10; printf(“%x, %o, “, ch, ch, k); printf(“k=%d/n“, k);(分数:1.00)A.因变量类型与格式描述符的类型不匹配,输出无定值B.输出项与格式描述符个数不符,输出为 0 值或不定值C.62, 142, k=%dD.62, 142, k=%1023.有以下程序: #include stdio.h main() char a=“a“, b; printf(“%c,“, +a); printf(1%c/n“, b=a+); 程序运行后的输出结果是

    12、( )。(分数:1.00)A.b,bB.b,cC.a,bD.a,c24.下面程序运行后的输出结果是_。 #includestdio.h main() int a5=1,0,4,2,0,b5=1,2,3,4,5,i,s=0; for(i=0;i5;i+)s=s+bai; printf(“%d/n“,s); (分数:2.50)A.12B.15C.11D.825.在软件开发中,需求分析阶段产生的主要文档是_。(分数:2.00)A.可行性分析报告B.软件需求规格说明书C.概要设计说明书D.集成测试计划26.以下叙述中错误的是_。(分数:2.00)A.C 程序必须由一个或一个以上的函数组成B.函数调用可

    13、以作为一个独立的语句存在C.若函数有返回值,必须通过 return 语句返回D.函数形参的值也可以传回给对应的实参27.下列形式中不合法的常量是_。(分数:1.00)A.2.E8B.-.28C.-028D.2e-828.若二维数组 a 有 m 列,则在 aij前的元素个数为_。(分数:2.50)A.j*m+iB.i*m+jC.j*m+i+1D.i*m+j+129.以下叙述正确的是 _ 。(分数:1.00)A.在 C 语言程序中,main 函数必须位于程序的最前面B.C 语言程序的每行中只能写一条语句C.C 语言本身没有输入输出语句D.在对一个 C 语言程序进行编译的过程,可发现注释中的拼写错误

    14、30.下列说法中,不属于数据模型所描述的内容的是 _ 。(分数:1.00)A.数据结构B.数据操作C.数据查询D.数据约束31.串的长度是 _(分数:1.00)A.串中不同字符的个数B.串中不同字母的个数C.串中所含字符的个数且字符个数大于零D.串中所含字符的个数32.以下叙述中错误的是_。(分数:1.00)A.函数形参的值也可以传回给对应的实参B.函数调用可以作为一个独立的语句存在C.若函数有返回值,必须通过 return 语句返回D.C 程序必须由一个或一个以上的函数组成33.有以下程序 #includestdio.h #define N 4 void fun(int aN,int b)

    15、int i; for(i=0;iN;i+)bi=aii-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“); 程序运行后的输出结果是_。(分数:1.00)A.-3,-1,1,3,B.-12,-3,0,0,C.0,1,2,3,D.-3,-3,-3,-3,34.有三个关系 R、S 和 T 如下: R B C D a 0 k1 b 1 n1 S B C D f 3 h2 a 0 k1 n 2 x1 T B C

    16、 D a 0 k1 由关系 R 和 S 通过运算得到关系 T,则所使用的运算为_。(分数:1.00)A并B.自然连接C.笛卡儿积D交35.有以下程序: #includestdio.h char fun(char*c) if( *c=“Z“ return*c; main() char s81, *p=s; gets(s); while(*p) *p=fun(p); putchar(*p); p+; putchar(“/n“); 若运行时从键盘输入:OPEN THE DOORCR(此处CR代表 Enter 键),则程序运行后的输出结果是(分数:1.00)A.oPEN tHE dOORB.open

    17、the doorC.OPEN THE DOORD.Open The Door二级 C 语言分类模拟题 509 答案解析(总分:49.50,做题时间:90 分钟)一、选择题(总题数:35,分数:49.50)1.对下述程序的判断中,正确的是 _ 。 #includestdio.h void main() char *P,s256; p=s; while(strcmp(s,“the end“) printf(“Input the string:“); gets(s); while(*P) putchar(*p+);(分数:2.00)A.此程序循环接收字符串并输出,直到接收到字符串“the end”为

    18、止 B.此程序循环接收字符串,接收到字符串“the end”则输出,否则程序终止C.此程序循环接收字符串并输出,直到接收字符串“the end”为止,但因为代码有错误,程序不能正常工作D.此程序循环接收字符串并将其连接在一起,直到接收字符串“the end”为止,输出连接在一起的字符串解析:解析 strcmp(str1,str2)是比较字符串 str1 和 sir2,当两字符串相等时,返回值为 0,不相等时返回值为非 0;所以此段程序的功能是在未接收到字符串“the end”时,读入字符并输出。2.数据库系统的核心是_。(分数:2.50)A.数据模型B.数据库管理系统 C.数据库D.数据库管理

    19、员解析:解析 本题考查对数据库系统的理解。数据库系统由数据库(数据)、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬件)、软件平台 5 个部分构成。其中数据库管理系统是数据库系统的核心,它负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等工作。3.有以下程序: # include stdio.h void fun(char *c) while(*c) if(*c=“a“*c=“z“)*c=*c-(“a“-“A“); c+; main() char s81; gets(s); fun(;) puts(s); 当执行程序时从键盘输入 Hello Beijing回车,则程

    20、序的输出结果是_。(分数:1.00)A.hello beijingB.Hello BeijingC.HELLO BEIJING D.hELLO Beijing解析:解析 此程序是进行将小写字母变成大写字母的操作,所以答案为 C。4.在软件开发中,需求分析阶段产生的主要文档是_。(分数:1.50)A.可行性分析报告B.软件需求规格说明书 C.概要设计说明书D.集成测试计划解析:解析 A 错误,可行性分析阶段产生可行性分析报告。C 错误,总体设计阶段产生概要设计说明书。D 错误,集成测试计划是在概要设计阶段编写的文档。B 正确,需求规格说明书是需求分析阶段产生的主要文档,是后续工作如设计、编码等需

    21、要的重要参考文档。5.设有定义:char s81;int i=0;,以下不能将一行(不超过 80 个字符)带有空格的字符串正确读入的语句或语句组是_。(分数:1.00)A.while(si+=getchar()!=“/n“);si=“/0“;B.scanf(“%s“,s); C.gets(s);D.doscanf(“%c“,while(si+!=“/n“);si=“/0“;解析:解析 字符串的输入不能使用“scanf(“%s“,s);”,而应该使用“gets(s)”,因此选择 B。6.设有一联合体变量定义如下: union data long a; float b; int c; char d

    22、; ; union data x; 执行下列语句后,正确的联合体变量 x 的值是_。 x.a=111111; x.b=2222; x.c=2.1546; x.d=“R“;(分数:2.50)A.111111B.2222C.2.1546DR 解析:解析 本题主要考查的知识点是联合体的内存使用。联合体与结构体的定义相同,其本质区别就在于内存使用方式的不同。联合体所占用的内存空间为最长的成员所占用的空间,各个成员分量全部是从低地址方向开始使用内存单元;联合体中的空间在某一时刻只能保持某一个成员的数据,所以本题执行完一系列赋值后,只得到最后执行的字符“R“。7.设有两行定义语句: int scanf;

    23、float case; 则以下叙述正确的是_。(分数:1.00)A.两行定义语句都不合法B.两行定义语句都合法C.第 1 行语句不合法D.第 2 行语句不合法 解析:解析 合法的标识符由字母(大、小写均可)、数字和下划线组成,并且必须以字母或下划线开头。关键字是指被 C 语言保留的,不能用作其他用途的一些标识符,它们在程序中都代表着固定的含义,用户不可重新定义。预定义标识符是系统已经有过定义的标识符,用户可以重新定义,可以作为变量名。scanf 为库函数名,属于预定义标识符,可以被用户重定义,所以第一行语句合法。case 为关键字,是选择结构 switch 语句中的关键字,不可被用户重定义,所

    24、以第二行语句不合法。故 D 选项正确。8.有如下嵌套的 if 语句: if(ab) if(ac)k=a; else k=c; else if(bc)k=b; else k=c; 以下选项中与上述 if 语句等价的语句是_。(分数:1.00)A.k=(ab)?(bc)?a:b):(bc)?b:c);B.k=(ab)?(ac)?a:c):(bc)?b:c); C.k=(ab)?a:b;k=(bc)?b:c;D.k=(ab)?a:b;k=(ac)?a:c;解析:解析 题目中嵌套语句的含义是当 ab 且 ac 成立,则将 a 的值赋给 k。如果 ab 成立而ac 不成立将 c 的值赋给 k。如果 ab

    25、 不成立而 bc 成立,将 b 的值赋给 k。如果如果 ab 不成立且bc 也不成立,将 c 的值赋给 k。判断条件表达式只有 B 选项可以表示这个含义。9.下列选项中,不属于模块间耦合的是(分数:2.00)A.数据耦合B.标记耦合C.异构耦合 D.公共耦合解析:解析 模块之间的耦合程度反映了模块的独立性,也反映了系统分解后的复杂程度。按照耦合程度从强到弱分别是:内容耦合、公共耦合、外部耦合、控制耦合、标记耦合、数据耦合和非直接耦合,没有异构耦合这种方式。10.有以下程序 #includestdio.h void fun(int a,int n,int flag) int i=0,j,t; f

    26、or(i=0;in-1;i+) for(j=i+1;jn;j+) if(flag) if(aiaj) t=ai;ai=aj;aj=t; else if(aiaj) t=ai;ai=aj;aj=t; main() int c10=7,9,10,8,3,5,1,6,2,4,i; fun(c,10,0); fun(c,5,1); for(i=0;i10;i+) printf(“%d,“,ci); 程序运行结果正确的是_。(分数:1.00)A.6,7,8,9,10,5,4,3,2,1,B.5,4,3,2,1,6,7,8,9,10, C.6,7,8,9,10,1,2,3,4,5,D.1,2,3,4,5,

    27、6,7,8,9,10,解析:解析 题意中,fun()函数的作用是:将数组 a 中,前 n 个元素,按照 flag 来排序,当 flag 为true(非 0)时,降序排列;当 flag 为 false(0)时,升序排列;main()函数中,两次调用 fun()函数,第一次传入数组元素个数为 10,flag 为 0,所以第一次 fun()函数的调用,将数组 c 中的前 10 个元素升序排列;第二次传入数组元素个数为 5,flag 为 1,所以第二次 fun()函数的调用,将数组 c 中的前 5 个元素降序排列,两次调用后,数组 c 的元素顺序如下:5,4,3,2,1,6,7,8,9,10,本题答案

    28、为 B。11.以下不能定义为用户标识符的是_。(分数:1.00)A.scanfB.VoidC._3comD.int 解析:解析 本题选项 D 中 int 为 C 语言的保留字,是错误的。注意:C 语言的标识符是区分大小写的,void 是 C 语言的保留字,而 Void 不是 C 语言的保留字,故 Void 也可定义为用户标识符。12.以下程序的输出结果是_。 #includestdio.h main() int a=5,b=4,c=6,d; printf(“%d/n“,d=ab?(ac?a:c):(b); (分数:1.00)A.5B.4C.6 D.不确定解析:13.有以下程序: #includ

    29、estdio.h main() char a=3,b=6,c; c=(ab)2; printf(“%d/n“,c); 程序运行后的输出结果是_。(分数:1.00)A.5B.1C.20 D.18解析:解析 运算符为按位异或运算符,即 01=1,10=1,11=0,00=0,因此 ab=101 在进行操作,变为 10100 2 =20 10 ,因此答案为 C 选项。14.一名工作人员可以使用多台计算机,而一台计算机可被多名工作人员使用,则实体工作人员与实体计算机之间的联系是_。(分数:1.00)A.一对一B.一对多C.多对多 D.多对一解析:解析 因为一名工作人员可以操作多台计算机,而一台计算机又

    30、可以被多名工作人员使用,所以两个实体之间是多对多的关系,选择 C。15.有以下程序 #includestdio.h #includestring.h typedef struetchar name9; char sex; float score2;STU; STUf(STU a) (STU b=“Zhao“, “m“, 85.0, 90.0; int i; strcpy(a.name, b.name); a.sex=b.sex; for(i=0; i2; i+)a.scorei=b.scorei; return a; main() (STU c=“Qian“, “f“, 95.0, 92.0,

    31、 d; d=f(c); printf(“%s, %c, %2.0f, %2.0f/n“, d.name, d.sex, d.score0, d.score1); 程序的运行结果是_。(分数:2.00)A.Qian, m, 85, 90B.Zhao, m, 85, 90 C.Qian, f, 95, 92D.Zhao, f, 95, 92解析:解析 f 函数返回的结构体与 f 函数内定义的 b 结构体相同,所以答案选择 B。16.设有以下语句: int a=1, b=2, c; c=a(b2); 执行后,c 的值为( )。(分数:1.00)A.7B.9 C.8D.6解析:解析 b 为 2,二进制

    32、为 00000010,执行左移两位操作后为 00001000,然后与 a 的二进制00000001 作异或操作后的结果为 00001001,即十进制的 9。所以选择 B 选项。17.以下运算符中优先级最高的运算符是_。(分数:1.00)A.+ B.?:C.!=D. int v4=0, 0, 0, 0, k, i; for(k=0; sk; k+) switch(sk) case “1“: i=0; case “2“: i=1; case “3“: i=2; case “4“: i=3; vi+; for(k=0; k4; k+)printf(“%d“, vk);(分数:2.50)A.4 2 1

    33、 0B.0 0 0 8 C.4 6 7 8D.8 8 8 8解析:解析 本题考查 switch,case 语句,当 k=0 时,循环体成立,执行 switch 后表达式的值为“1“,执行 case“1“,i 的值为 0,因为没有 break 语句,继续执行其后的语句,到最后一个语句时 i 的值为 3,此时 vi+,v3=1,接着执行 k+后,k 的值为 1,当 k=1 时,循环成立。执行 switch 后的表达式的值为“2“,执行 case“2“,i 的值为 1,因为没有 break 语句,继续执行其后的语句,到最后一个语句时,i的值为 3,此时 vi+,v3=2,接着执行 k+后,k 的值为

    34、 2,依次下去,case“4“也会执行,最后 i 的值一定为 3,到 v3=8 时循环结束,而 v0v2的值一直没有变化,故选择 B 选项。22.若 ch 为 char 型变量,k 为 int 型变量(已知字符 a 的 ASCII 码是 97),则执行下列语句后输出的结果为_。 ch=“b“; k=10; printf(“%x, %o, “, ch, ch, k); printf(“k=%d/n“, k);(分数:1.00)A.因变量类型与格式描述符的类型不匹配,输出无定值B.输出项与格式描述符个数不符,输出为 0 值或不定值C.62, 142, k=%d D.62, 142, k=%10解析

    35、:解析 选项 A、B 的空间不够;字符串存储要有结束符“/0“,且要占用一个空间,printf 用来输出字符,不能输入字符串。23.有以下程序: #include stdio.h main() char a=“a“, b; printf(“%c,“, +a); printf(1%c/n“, b=a+); 程序运行后的输出结果是( )。(分数:1.00)A.b,b B.b,cC.a,bD.a,c解析:解析 本题考核的知识点是运算符+的用法。程序中的第一个输出语句输出表达式+a 的值,该+a 是在使用 a 之前,先使 a 的值加 1,即 a 加 1 为字符 b,此时 a 的值为 b,所以第一个输出

    36、语句输出的值为 b,第二个输出语句中输出的 b 的值,这时 b 的值为表达式 a+的值,a+是在使用 a 之后(此时 a 的值为 b,所以赋给 b 的值为 b),使 a 的值加一,因此第二个输出的值也为 b。所以,4 个选项中选项 A)符合题意。24.下面程序运行后的输出结果是_。 #includestdio.h main() int a5=1,0,4,2,0,b5=1,2,3,4,5,i,s=0; for(i=0;i5;i+)s=s+bai; printf(“%d/n“,s); (分数:2.50)A.12 B.15C.11D.8解析:解析 这道题目是计算一维数组 b 中某些元素的和。这些元素

    37、的下标值是一维数组 a 中元素值。s=0+b1+b0+b4+b2+b0=2+1+5+3+1=12。25.在软件开发中,需求分析阶段产生的主要文档是_。(分数:2.00)A.可行性分析报告B.软件需求规格说明书 C.概要设计说明书D.集成测试计划解析:解析 A 错误,可行性分析阶段产生可行性分析报告。C 错误,概要设计说明书是总体设计阶段产生的文档。D 错误,集成测试计划是在概要设计阶段编写的文档。B 正确,需求规格说明书是后续工作如设计、编码等需要的重要参考文档。26.以下叙述中错误的是_。(分数:2.00)A.C 程序必须由一个或一个以上的函数组成B.函数调用可以作为一个独立的语句存在C.若

    38、函数有返回值,必须通过 return 语句返回D.函数形参的值也可以传回给对应的实参 解析:解析 函数参数传递是个不可逆的过程,形参不会把值传回实参,所以 D 选项错误。27.下列形式中不合法的常量是_。(分数:1.00)A.2.E8B.-.28C.-028 D.2e-8解析:解析 0 开头表示的是八进制整型常量,八进制数只能用 07 的数字表示。28.若二维数组 a 有 m 列,则在 aij前的元素个数为_。(分数:2.50)A.j*m+iB.i*m+j C.j*m+i+1D.i*m+j+1解析:解析 二维数组的元素可以看成是按矩阵形式存放的,总是先存放第一行的元素,再存放第二行的元素。 数

    39、组第一维的下标是 i,说明它前面还有 i 行,有 i*m 个元素,数组第二维的下标是 j,说明它前面还有j 列,有 j 个元素,所以共有 i*m+j 个元素。29.以下叙述正确的是 _ 。(分数:1.00)A.在 C 语言程序中,main 函数必须位于程序的最前面B.C 语言程序的每行中只能写一条语句C.C 语言本身没有输入输出语句 D.在对一个 C 语言程序进行编译的过程,可发现注释中的拼写错误解析:解析 考查 C 语言的几个基本概念。 解题要点 选项 A)中,main 函数可以放在程序的任何位置,不一定要放在程序的最前面,不论 main 函数放在什么位置,程序的执行却总是从 main 函数

    40、开始的;选项 B)中,因为 C 语言的语法限制不严格,所以可以多条语句放在同一行上;选项 C)是正确的,C 语言中没有专门的输入输出语句,输入输出是通过使用输入输出库函数来实现的;选项 D)是错误的,因为 C 语言中的注释是不会被编译的。 考点链接 掌握算法的相关特性。30.下列说法中,不属于数据模型所描述的内容的是 _ 。(分数:1.00)A.数据结构B.数据操作C.数据查询 D.数据约束解析:解析 数据模型所描述的内容有 3 个部分,它们是数据结构、数据操作和数据约束。其中,数据模型中的数据结构主要描述数据的类型、内容、性质,以及数据库的联系等;数据操作主要是描述在相应数据结构上的操作类型

    41、与操作方式。本题答案为 C)。31.串的长度是 _(分数:1.00)A.串中不同字符的个数B.串中不同字母的个数C.串中所含字符的个数且字符个数大于零D.串中所含字符的个数 解析:32.以下叙述中错误的是_。(分数:1.00)A.函数形参的值也可以传回给对应的实参 B.函数调用可以作为一个独立的语句存在C.若函数有返回值,必须通过 return 语句返回D.C 程序必须由一个或一个以上的函数组成解析:解析 函数参数传递是个不可逆的过程,形参不会把值传回实参,所以 A 选项错误。33.有以下程序 #includestdio.h #define N 4 void fun(int aN,int b)

    42、 int i; for(i=0;iN;i+)bi=aii-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“); 程序运行后的输出结果是_。(分数:1.00)A.-3,-1,1,3, B.-12,-3,0,0,C.0,1,2,3,D.-3,-3,-3,-3,解析:解析 本题中由 fun 函数可知,b0=a00-a03=1-4=-3,b1=a11-a12=6-7=-1,b2=a22-a21=11-10=1,

    43、b3=a33-a31=16-13=3。因此主函数中打印 y 数组元素的值为 A 选项。34.有三个关系 R、S 和 T 如下: R B C D a 0 k1 b 1 n1 S B C D f 3 h2 a 0 k1 n 2 x1 T B C D a 0 k1 由关系 R 和 S 通过运算得到关系 T,则所使用的运算为_。(分数:1.00)A并B.自然连接C.笛卡儿积D交 解析:解析 自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,因此 B 错误。笛卡尔积是用 R 集合中的元素为第一元素,S 集合中的元素为第二元素构成的有序对,因此

    44、 C 错误。根据关系 T 可以很明显地看出是从关系 R 与关系 S 中取得相同的关系组,所以使用的是交运算,选择 D。35.有以下程序: #includestdio.h char fun(char*c) if( *c=“Z“ return*c; main() char s81, *p=s; gets(s); while(*p) *p=fun(p); putchar(*p); p+; putchar(“/n“); 若运行时从键盘输入:OPEN THE DOORCR(此处CR代表 Enter 键),则程序运行后的输出结果是(分数:1.00)A.oPEN tHE dOORB.open the door C.OPEN THE DOORD.Open The Door解析:


    注意事项

    本文(【计算机类职业资格】二级C语言分类模拟题509及答案解析.doc)为本站会员(deputyduring120)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开