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

    【学历类职业资格】高级语言程序设计自考题-22及答案解析.doc

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

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

    【学历类职业资格】高级语言程序设计自考题-22及答案解析.doc

    1、高级语言程序设计自考题-22 及答案解析(总分:100.00,做题时间:90 分钟)一、B单项选择题/B(总题数:15,分数:30.00)1.以下选项中不合法的标识符是_ A.apple B._1_11 C.,则表达式 x-=x+x的值为_ A.0 B.-5 C.5 D.10(分数:2.00)A.B.C.D.3.设有定义:int m=1,n=2;float f=7;,则以下选项中错误的表达式是_ A.m%int(f) B.m=m=m C.-m+ D.m=f=n(分数:2.00)A.B.C.D.4.在以下选项中,没有构成死循环的是_ A.int i=10; B.for(i=1;i+) while

    2、(1) i=i%10+1; if(i10)break; C.int k=100; dok+;while(k100); D.int s=36; while(s)-s;(分数:2.00)A.B.C.D.5.下面程序的运行结果是 _main()int y=5,x=14;y=(x=3*y,x+6),x-1);printf(“x=%d,y=%d“,x,y); A.x=27,y=27 B.x=12,y=13 C.x=15,y=14 D.x=y=27(分数:2.00)A.B.C.D.6.char型常量在内存中存放的是_ A.二进制代码值 B.十进制代码值 C.十六进制代码值 D.ASCII代码值(分数:2.

    3、00)A.B.C.D.7.定义函数时,下列选项中可以作为函数存储类型的是_ A.static B.viod C.auto D.register(分数:2.00)A.B.C.D.8.设有如下程序段:int x=1,y=0;printf(“%d/n“,(x,y);则下面叙述正确的是_ A.输出值为 1 B.输出值为 0 C.运行时产生错误信息 D.输出语句中格式说明符的个数少于输出项的个数,不能正确输出(分数:2.00)A.B.C.D.9.阅读下列程序段,程序的输出结果为_#include“stdio.h“#define M(x,y)(x);*(y)#define N(x,y)(x)/(y)mai

    4、n()int a=5,b=8,c=9,k;k=N(M(a,b),c);printf(“%d/n“,k); A.4 B.8 C.5 D.6(分数:2.00)A.B.C.D.10.若有以下语句,则下面有关描述正确的是_char x=“abcde“;char y=a,b,c,d,e; A.x数组和 y数组的数组长度相同 B.x数组长度大于 y数组长度 C.x数组长度小于 y数组长度 D.x数组等价于 y数组(分数:2.00)A.B.C.D.11.当定义一个结构类型变量时系统分配给它的内存是_ A.成员中占内存最大者所需容量 B.结构中最后一个成员所需内存量 C.各成员所需内存量的总和 D.并不分配内

    5、存(分数:2.00)A.B.C.D.12.若有语句:char s1=“apple1“,s28,*s3,*s4=“apple2“;则对库函数 strcpy错误调用的是_ A.strcpy(s1,“apple2“); B.strcpy(s4,“apple1“); C.strcpy(s3,“apple1“); D.strcpy(“apple2“,s2);(分数:2.00)A.B.C.D.13.以下叙述不正确的是_ A.在函数中,通过 return语句传回函数值 B.在函数中,可以有多条 return语句 C.在 C中,main 后的一对圆括号中可以带有形参,也可不带 D.在 C中,调用函数,必须在一

    6、条独立的语句中完成(分数:2.00)A.B.C.D.14.执行下列程序段后,*p 的值是_char *p=“abdf“;printf(“%c“,*(p+strlen(p); A.不输出 B.b C.d D.a(分数:2.00)A.B.C.D.15.下列关于文件随机定位函数 fseekU /U的描述正确的是_ A.若定位正确返回非零值 B.本函数可以使用文件内部指针直接指向需要的某个数据 C.本函数只能用于二进制文件 D.包含在头文件 stdlib.h中(分数:2.00)A.B.C.D.二、B填空题/B(总题数:10,分数:20.00)16.C程序中,每个语句的后面都要加上一个_,它是语句结束的

    7、标志。(分数:2.00)填空项 1:_17.do-while结构属于基本控制结构中的_结构。(分数:2.00)填空项 1:_18.若有定义:int i=10;则执行下列程序后,变量 i的正确输出结果是_。 switch(i) case 9:i+=1; case 10:i+=1; case 11:i+=1; default:i+=1;(分数:2.00)填空项 1:_19.若有以下定义: int apple10; 则 apple数组元素下标的上限为_,下限为_。(分数:2.00)填空项 1:_20.函数间传递数据有四种方式:_、_、_和_。(分数:2.00)填空项 1:_21.“FILE *p”的

    8、作用是定义了一个_,其中“FILE”是在_头文件中定义的。(分数:2.00)填空项 1:_22.设 int x=6;,执行语句 printf(x%2)?(“*%d/n“):(“#%d/n“),x);后,输出的结果是_。(分数:2.00)填空项 1:_23.被调函数在执行结束时,这个函数中定义的_类型的变量不被释放。(分数:2.00)填空项 1:_24.使用系统函数对两个字符串进行比较,该系统函数的名字是_。(分数:2.00)填空项 1:_25.在对文件的操作中,若要求文件的位置回到文件的开头,应调用的函数是_。(分数:2.00)填空项 1:_三、B程序分析题/B(总题数:4,分数:16.00)

    9、26.#includestdio.h void main() for(i=1;i6;i+) printf(“%d/t%c/n“,i,(A+i); (分数:4.00)_27.以下程序的输出结果是_。 struct APPLE int x,y;struct APPLE *p;h2; main() h0.x=1;h0.y=2; h1.x=3;h1.y=4; h0.p=(分数:4.00)_28.main() int s=0,k; for(k=8;k=0;k-) switch(k) case 0: case 2:s+;break; case 4:s+=3;break; case 7: case 3:s-

    10、; case 6:break; case 1: case 5: case 8:s+=2;break; printf(“s=%d/n“,s); (分数:4.00)_29.int f1(int x,int y) return xy?x:y; int f2(int x,int y) return xy?y:x; main() int a=4,b=3,c=5,d,e,f; d=f1(a,b);d=f1(d,e); e=f2(a,b);e=f2(e,c); f=a+b+c-d-e+2; printf(“%d,%d,%d/n“,d,f,e); (分数:4.00)_四、B程序填充题/B(总题数:3,分数:1

    11、8.00)30.下面程序的功能是输出 1000以内能被 7整除,且个位为 5的所有整数。 main() int i,m; for(i=1;_;i+) /*第一空*/ m=i*10+5; if(_)continue; /*第二空*/ printf(“%d/n“,_); /*第三空*/ (分数:6.00)填空项 1:_31.以下程序能将字符串 Program!反向打印出来,请填空。 #includestdio.h void out(char *str) char *s=_;/*第一空*/ if(*S=NULL)return; while(_)s+;/*第二空*/ s-; printf(“%c/n“

    12、,*s); *s=NULL; _;/*第三空*/ main() char c=“Program!“; out(c);(分数:6.00)填空项 1:_32.给定程序中,函数 fun的功能是将形参 std所指结构体数组中年龄最大者的数据作为函数值返回,并在 main函数中输出。 #includestdio.h typedef struct char name10; int age; STD; STD fun(STD std,int n) STD max;int i; max=_; /*第一空*/ for(i=1;in;i+) if(max.age_)max=stdi;/*第二空*/ return

    13、max; main() STD std5=“aaa“,17,“bbb“,16,“ccc“,18,“ddd“,17,“eee“,15; STD max; max=fun(std,5); printf(“/n the result:/n“); printf(“/nName:%s,Age:%d/n“,_,max.age); /*第三空*/ (分数:6.00)填空项 1:_五、B程序设计题/B(总题数:2,分数:16.00)33.在屏幕上显示输出 a盘根目录下名为“string.txt”的文本文件读取的前 20个字符组成的字符串。(分数:8.00)_34.有一个字符串,包含 n个字符。写一个函数,其功

    14、能是将此字符串中从第 m个字符开始的全部字符复制成另一个字符串。要求在主函数中输入字符串及 m值并输出复制结果。(分数:8.00)_高级语言程序设计自考题-22 答案解析(总分:100.00,做题时间:90 分钟)一、B单项选择题/B(总题数:15,分数:30.00)1.以下选项中不合法的标识符是_ A.apple B._1_11 C.,则表达式 x-=x+x的值为_ A.0 B.-5 C.5 D.10(分数:2.00)A.B. C.D.解析:考点 运算符的优先级 解析 算术运算符+的优先级高于-=,且-=的结合方向为自右向左,所以表达式 x-=x+x可以表示成 x=x-(x+x)=-x=-5

    15、,选择 B。3.设有定义:int m=1,n=2;float f=7;,则以下选项中错误的表达式是_ A.m%int(f) B.m=m=m C.-m+ D.m=f=n(分数:2.00)A. B.C.D.解析:考点 强制性数据类型转换规则 解析 选项 A中的 int(f)不正确,因为强制类型转换表示为:(类型名)(表达式),正确表示为(int)f。4.在以下选项中,没有构成死循环的是_ A.int i=10; B.for(i=1;i+) while(1) i=i%10+1; if(i10)break; C.int k=100; dok+;while(k100); D.int s=36; whil

    16、e(s)-s;(分数:2.00)A.B.C.D. 解析:考点 循环语句的条件 解析 A 选项的循环表达式的条件永久为 1,并且小于 10的数与 10取余不超过 9,所以在循环体内表达式为 i%10+1的值永远不大于 10,break 语句永远不会执行,所以是死循环;B 选项中的括号内没有能使循环停止的变量增量,是死循环;选项 C中先执行 k+,使 k=101,从而使循环陷入死循环。5.下面程序的运行结果是 _main()int y=5,x=14;y=(x=3*y,x+6),x-1);printf(“x=%d,y=%d“,x,y); A.x=27,y=27 B.x=12,y=13 C.x=15,

    17、y=14 D.x=y=27(分数:2.00)A.B.C. D.解析:考点 逗号表达式 解析 逗号表达式的求解步骤是先求表达式 1,然后依次求解表达式 2直到表达式 N的值,整个表达式的值就是最后一个表达式 N的值,表达式(x=3*y,x+6)中,x=15,表达式y=15-1=14。6.char型常量在内存中存放的是_ A.二进制代码值 B.十进制代码值 C.十六进制代码值 D.ASCII代码值(分数:2.00)A.B.C.D. 解析:考点 char 型常量 解析 char 型常量在内存中是以 ASCII代码值存储的。7.定义函数时,下列选项中可以作为函数存储类型的是_ A.static B.v

    18、iod C.auto D.register(分数:2.00)A. B.C.D.解析:考点 变量存储类型 解析 关键字 auto和 register用来说明具有自动存储期的变量,关键字static和 extern用来说明具有静态存储期的变量和函数,void 并不是存储类型。8.设有如下程序段:int x=1,y=0;printf(“%d/n“,(x,y);则下面叙述正确的是_ A.输出值为 1 B.输出值为 0 C.运行时产生错误信息 D.输出语句中格式说明符的个数少于输出项的个数,不能正确输出(分数:2.00)A.B. C.D.解析:考点 逗号表达式 解析 逗号运算符的结合性是从左到右。因此,

    19、最后一个表达式的值就是此逗号表达式的值。9.阅读下列程序段,程序的输出结果为_#include“stdio.h“#define M(x,y)(x);*(y)#define N(x,y)(x)/(y)main()int a=5,b=8,c=9,k;k=N(M(a,b),c);printf(“%d/n“,k); A.4 B.8 C.5 D.6(分数:2.00)A. B.C.D.解析:考点 宏定义 解析 带参数的宏定义命令形式如下:#define 宏名(形参表)替换文本。首先进行 M的宏替换,之后再进行 N的宏替换,替换后的表达式为(a)*(b)/(c)。10.若有以下语句,则下面有关描述正确的是_

    20、char x=“abcde“;char y=a,b,c,d,e; A.x数组和 y数组的数组长度相同 B.x数组长度大于 y数组长度 C.x数组长度小于 y数组长度 D.x数组等价于 y数组(分数:2.00)A.B. C.D.解析:考点 字符串特点 解析 x输入的是字符串,其后会有/0作为终止符,所以 x数组的长度比 y数组的长度长。11.当定义一个结构类型变量时系统分配给它的内存是_ A.成员中占内存最大者所需容量 B.结构中最后一个成员所需内存量 C.各成员所需内存量的总和 D.并不分配内存(分数:2.00)A.B.C. D.解析:考点 结构体的特点 解析 在编译时,对定义的类型是不分配空

    21、间的,只对结构体的变量分配空间,且是所需空间的总和。12.若有语句:char s1=“apple1“,s28,*s3,*s4=“apple2“;则对库函数 strcpy错误调用的是_ A.strcpy(s1,“apple2“); B.strcpy(s4,“apple1“); C.strcpy(s3,“apple1“); D.strcpy(“apple2“,s2);(分数:2.00)A.B.C.D. 解析:考点 字符串函数 strcpy 解析 strcpy()函数调用方式:strcpy(字符数组,字符串);。13.以下叙述不正确的是_ A.在函数中,通过 return语句传回函数值 B.在函数中

    22、,可以有多条 return语句 C.在 C中,main 后的一对圆括号中可以带有形参,也可不带 D.在 C中,调用函数,必须在一条独立的语句中完成(分数:2.00)A.B.C.D. 解析:考点 函数的调用 解析 调用函数并不一定要在独立语句中完成,也可作为表达式中的参数。14.执行下列程序段后,*p 的值是_char *p=“abdf“;printf(“%c“,*(p+strlen(p); A.不输出 B.b C.d D.a(分数:2.00)A. B.C.D.解析:考点 指针的移动 解析 strlen(p)返回 4,p 代表字符串首地址,则 p+4指针指向字符串的结束符/0,所以无输出。15.

    23、下列关于文件随机定位函数 fseekU /U的描述正确的是_ A.若定位正确返回非零值 B.本函数可以使用文件内部指针直接指向需要的某个数据 C.本函数只能用于二进制文件 D.包含在头文件 stdlib.h中(分数:2.00)A.B. C.D.解析:考点 fseek 函数 解析 文件随机定位函数可以使文件指针直接指向需要读取的某个数据;若定位正确则返回 0,否则返回非 0值;fseek 函数包含在 stdio.h中,可用于二进制文本,也可用于文件文本,只是用文本文件存放数据时,偏移量无法计算。二、B填空题/B(总题数:10,分数:20.00)16.C程序中,每个语句的后面都要加上一个_,它是语

    24、句结束的标志。(分数:2.00)填空项 1:_ (正确答案:;(分号))解析:考点 C 语言的基础知识 解析 C 程序中的每个语句以分号作为语句的结束。17.do-while结构属于基本控制结构中的_结构。(分数:2.00)填空项 1:_ (正确答案:循环)解析:考点 循环结构 解析 do-while 结构属于直到型循环结构。18.若有定义:int i=10;则执行下列程序后,变量 i的正确输出结果是_。 switch(i) case 9:i+=1; case 10:i+=1; case 11:i+=1; default:i+=1;(分数:2.00)填空项 1:_ (正确答案:13)解析:考点

    25、 多分支选择结构 解析 因为没有 break语句,所以从 case10开始会一直执行下去,直到程序结构。19.若有以下定义: int apple10; 则 apple数组元素下标的上限为_,下限为_。(分数:2.00)填空项 1:_ (正确答案:9,0)解析:考点 一维数组的下标 解析 一维数组的下标范围为 0长度-1。20.函数间传递数据有四种方式:_、_、_和_。(分数:2.00)填空项 1:_ (正确答案:值传递、地址传递、返回值、全局变量传递)解析:考点 函数调用时的数据传递方法 解析 C 语言规定在函数间传递数据有四种方式:值传递方式、地址传递方式、返回值方式和全局变量传递方式。21

    26、.“FILE *p”的作用是定义了一个_,其中“FILE”是在_头文件中定义的。(分数:2.00)填空项 1:_ (正确答案:文件指针,stdio.h)解析:考点 文件型指针 解析 用 FILE定义的指针变量称为文件型指针,专用于文件处理。FILE 在头文件“stdio.h“中定义。22.设 int x=6;,执行语句 printf(x%2)?(“*%d/n“):(“#%d/n“),x);后,输出的结果是_。(分数:2.00)填空项 1:_ (正确答案:#6)解析:考点 条件表达式 解析 x%2 的值为 0,执行(“#%d/n“)。23.被调函数在执行结束时,这个函数中定义的_类型的变量不被释

    27、放。(分数:2.00)填空项 1:_ (正确答案:stadic)解析:考点 变量的存储类型 解析 static 型变量在程序开始时就分配了固定的内存,在运行程序过程中不被释放。24.使用系统函数对两个字符串进行比较,该系统函数的名字是_。(分数:2.00)填空项 1:_ (正确答案:strcmp)解析:考点 字符串比较函数 解析 strcmp 函数的功能是比较两个字符串的大小。25.在对文件的操作中,若要求文件的位置回到文件的开头,应调用的函数是_。(分数:2.00)填空项 1:_ (正确答案:int rewind(FILE *fp))解析:考点 文件头定位函数 解析 当读取了文件中若干个数据

    28、后,又要从头读取数据,这时就需要将文件内部指针重新指向文件头,系统提供的文件头定位函数可以在任何时候将文件内部指针指向文件头。三、B程序分析题/B(总题数:4,分数:16.00)26.#includestdio.h void main() for(i=1;i6;i+) printf(“%d/t%c/n“,i,(A+i); (分数:4.00)_正确答案:(1 B 2 C 3 D 4 E 5 F)解析:27.以下程序的输出结果是_。 struct APPLE int x,y;struct APPLE *p;h2; main() h0.x=1;h0.y=2; h1.x=3;h1.y=4; h0.p=

    29、(分数:4.00)_正确答案:(32)解析:28.main() int s=0,k; for(k=8;k=0;k-) switch(k) case 0: case 2:s+;break; case 4:s+=3;break; case 7: case 3:s-; case 6:break; case 1: case 5: case 8:s+=2;break; printf(“s=%d/n“,s); (分数:4.00)_正确答案:(s=9)解析:29.int f1(int x,int y) return xy?x:y; int f2(int x,int y) return xy?y:x; mai

    30、n() int a=4,b=3,c=5,d,e,f; d=f1(a,b);d=f1(d,e); e=f2(a,b);e=f2(e,c); f=a+b+c-d-e+2; printf(“%d,%d,%d/n“,d,f,e); (分数:4.00)_正确答案:(5,6,3)解析:四、B程序填充题/B(总题数:3,分数:18.00)30.下面程序的功能是输出 1000以内能被 7整除,且个位为 5的所有整数。 main() int i,m; for(i=1;_;i+) /*第一空*/ m=i*10+5; if(_)continue; /*第二空*/ printf(“%d/n“,_); /*第三空*/

    31、(分数:6.00)填空项 1:_ (正确答案:i99 i%7!=0)解析:31.以下程序能将字符串 Program!反向打印出来,请填空。 #includestdio.h void out(char *str) char *s=_;/*第一空*/ if(*S=NULL)return; while(_)s+;/*第二空*/ s-; printf(“%c/n“,*s); *s=NULL; _;/*第三空*/ main() char c=“Program!“; out(c);(分数:6.00)填空项 1:_ (正确答案:str *s out(str))解析:32.给定程序中,函数 fun的功能是将形

    32、参 std所指结构体数组中年龄最大者的数据作为函数值返回,并在 main函数中输出。 #includestdio.h typedef struct char name10; int age; STD; STD fun(STD std,int n) STD max;int i; max=_; /*第一空*/ for(i=1;in;i+) if(max.age_)max=stdi;/*第二空*/ return max; main() STD std5=“aaa“,17,“bbb“,16,“ccc“,18,“ddd“,17,“eee“,15; STD max; max=fun(std,5); pri

    33、ntf(“/n the result:/n“); printf(“/nName:%s,Age:%d/n“,_,max.age); /*第三空*/ (分数:6.00)填空项 1:_ (正确答案:std0 stdi.age max.name)解析:五、B程序设计题/B(总题数:2,分数:16.00)33.在屏幕上显示输出 a盘根目录下名为“string.txt”的文本文件读取的前 20个字符组成的字符串。(分数:8.00)_正确答案:(#includestdio.h #inclidestdlib.h/*因包含函数 exit(0),故需在预编译时加入头文件“stdlib.h“*/ main() FI

    34、LE *fp; char s21; if(fp=fopen(“a;/string.txt“,“r“)=NULL) printf(“Fjle cant be opened“);exit(0); fgets(s,21,rp);/*从文件获得 20个字符并组字符串存入字符数组*/ rputs(s,stdout);/*从屏幕显示输出,stdout 是显示器输出设备对应的文件型指针*/ )解析:34.有一个字符串,包含 n个字符。写一个函数,其功能是将此字符串中从第 m个字符开始的全部字符复制成另一个字符串。要求在主函数中输入字符串及 m值并输出复制结果。(分数:8.00)_正确答案:(#include

    35、stdio.h #includectype.h char copystr(char *p1,char *p2,int m) int n=0; while(nm-1)/*寻找第 m个字符*/ n+; p1+; while(*p1!=/0)/*复制从第 m个字符到字符串结束这一段字符到*p2 中*/ *p2=*p1; p1+; p2+; *p2=/0; main() int m; char str180,str280; printf(“Please input a string from?/n“); scanf(“%d“, if(strlen(str1)m) printf(“/nError input!“); else copystr(str1,str2,m);/*调用函数 copystr()进行字符串输出*/ printf(“/nResult is:%s/n,str2“); )解析:


    注意事项

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




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

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

    收起
    展开