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

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

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

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

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

    1、高级语言程序设计自考题-21 及答案解析(总分:100.00,做题时间:90 分钟)一、B单项选择题/B(总题数:15,分数:30.00)1.以下叙述中错误的是_ A.使用三种基本结构构成的程序只能解决一些简单的问题 B.结构化程序设计提倡模块化 C.C语言是结构化程序设计语言 D.结构化程序的基本结构为顺序、选择、循环(分数:2.00)A.B.C.D.2.现有定义 int a;double b;float c;char k;则表达式 a/b+c-k的值的类型为_ A.int B.float C.double D.char(分数:2.00)A.B.C.D.3.当整型变量 c的值不为 2,4,6

    2、 时,值也为“真”的表达式是_ A.(c=2)|(c=4)|(c=6) B.(c=2 B.char a=/a; C.char a=bb; D.char a=/x1d;(分数:2.00)A.B.C.D.5.若有说明:int *p.m=15,n;以下正确的程序段是_ A.p=scanf(“%d, B.p=scanf(“%d“,*p); C.scanf(“%d“,*p=n; D.p=*p=m;(分数:2.00)A.B.C.D.6.设有如下程序段:char str=“Hello!“;char *ptr;ptr=str;执行完以上程序段后*(ptr+6)的值为_ A./0 B.o C./o D.O(分数

    3、:2.00)A.B.C.D.7.有以下程序:#includestdio.hmain()int x;scanf(“%d“,if(x=3);elseif(x!=10)printf(“%d/n“,x);程序运行时,输入的值在哪个范围才能有输出结果_ A.不等于 10的正数 B.大于 3或等于 10的正数 C.大于 3且不等于 10的整数 D.小于 3的正数(分数:2.00)A.B.C.D.8.设有如下说明:typedef struct STlong a;float b;char c3;N;以下说法正确的是_ A.N是一个结构体变量 B.说明形式非法 C.ST是一个结构体类型 D.N是一个结构体类型(

    4、分数:2.00)A.B.C.D.9.当调用函数时,形参是一个数组名,则向函数传递的是_ A.数组的大小 B.数组的地址 C.所有数组元素的地址 D.数组每个元素的值(分数:2.00)A.B.C.D.10.有以下函数:int fun(char *x,char *y)int i=0;while(*x=*y)y+;i+;return i;函数的功能是_ A.将 y所指字符串赋给 x所指存储空间,覆盖 x B.查找 x和 y所指字符串中是否有/0 C.统计 x和 y所指字符串中最前面连续相同的字符个数 D.统计 x和 y所指字符串中相同的字符个数(分数:2.00)A.B.C.D.11.在一个 C源程序

    5、文件中所定义的全局变量,其作用域为_ A.由具体定义位置和 extern说明来决定范围 B.所在程序的全部范围 C.所在函数的全部范围 D.所在文件的全部范围(分数:2.00)A.B.C.D.12.以下程序运行后,输出的结果是_main()char *s=“story“;s+=2;printf(“%1d/n“,s); A.字符o的地址 B.字符o的 ASCII码 C.ory D.出错(分数:2.00)A.B.C.D.13.以下说法中正确的是_ A.#define和 printf都是 C语句 B.printf是 C语句,但#define 不是 C.#define是 C语句,而 printf不是

    6、D.#define和 printf都不是 C语句(分数:2.00)A.B.C.D.14.下面程序段执行后输出的结果是_#includestdio.hmain()int a22=1,2,3,4,*p,i;p=for(i=0;i2;i+)*p+=i+1;printf(“%d“,%(p-2); A.4 B.2 C.3 D.1(分数:2.00)A.B.C.D.15.以下函数的功能是_ST()pschar *ps;char *p;p=ps;while(*p+);return(p-ps); A.将字符串 ps复制到 p中 B.求字符串的长度 C.比较两个字符串的大小 D.程序出错(分数:2.00)A.B.

    7、C.D.二、B填空题/B(总题数:10,分数:20.00)16.按照计算机语言的发展历史,计算机语言大致可分为三类:机器语言、汇编语言和_。(分数:2.00)填空项 1:_17.C程序是由_组成的,其中主函数的名字必须是_。(分数:2.00)填空项 1:_18.注释部分以_开始,以_结束。(分数:2.00)填空项 1:_19.程序中使用了字符串函数(如 strcmp),则必须包含的头文件名为_。(分数:2.00)填空项 1:_20.以下内循环语句执行了_次。 int i,j; for(i=5;i;i-) for(j=0;j4;j+)(分数:2.00)填空项 1:_21.设有定义:int a5=

    8、4,8;则 a0=_,a3=_。(分数:2.00)填空项 1:_22.已知: structint day;char month;int year;a,*b,b=可用 a.day引用结构体中的成员 day,请写出通过指针变量 b引用成员 a.day的其他两种形式,它们是_和_。(分数:2.00)填空项 1:_23.从文件中读一个字符,可调用函数_。(分数:2.00)填空项 1:_24.语句 printf(“a/bre“h1/y/bou/n“);输出的结果是_。(分数:2.00)填空项 1:_25.C语言中 fputc()函数对文本文件的存取是以_为单位的。(分数:2.00)填空项 1:_三、B程

    9、序分析题/B(总题数:4,分数:16.00)26.main() int i,k=5,a10,p3; for(i=0;i10;i+)ai=i; for(i=0;i3;i+)pi=ai*(i+1); for(i=0;i3;i+)k+=pi*2; printf(“%d/n“,k); (分数:4.00)_27.请在该程序右侧写出其输出结果。 int aa33=3,4,6; main() int j,*p= for(j=0;j2;j+) if(j=0) aajj+1=*p+2; else +p; printf(“%d“,*p); (分数:4.00)_28.#includestdio.h #include

    10、string.h main() char *p1,*p2,str50=“abcd“; p1=“abcd“;p2=“abcd“; strcpy(str+1,strcat(p1,p2); printf(“%s/n“,str); (分数:4.00)_29.struct stu int num; char name10; int age ; void py(struct stu *p) printf(“%s/n“,(*p).name); main() struct stu student3=1001,“Sun“,25, 1002,“Ling“,23, 1003,“Shen“,22; py(studen

    11、t+1); (分数:4.00)_四、B程序填充题/B(总题数:3,分数:18.00)30.以下程序是求矩阵 a和 b的和,结果存入矩阵 c中,并按矩阵形式输出。 #includestdio.h main() int a34=3,-2,1,5,1,0,4,-3,6,8,0,2; int b34=-2,0,1,4,5,-1,7,6,6,8,0,2; int I,j,c34; for(_) /*第一空*/ for(_) /*第二空*/ cij=_;/*第三空*/ for(i=0;i3;i+) for(j=0;j4;j+) printf(“%3d“,ci|j); (分数:6.00)填空项 1:_31.

    12、下列函数的主要功能是在 w指向的数组的前*n 个数据中插入 x,要求 w指向的数组的前*n 个数据按由小到大顺序存放。插入 x后,该数组中的数据仍按照从小到大的顺序排列,同时将*n 修改为插入 x后的长度。 void f(char *w,char x,int *n) int i,p=0; w*n=x; while(xwp)_; /*第一空*/ for(i=*n;ip;i-)wi=_;/*第二空*/ wp=x; _; /*第三空*/ (分数:6.00)填空项 1:_32.以下函数的功能是从名为“filea.dat“的文本文件中逐个读入字符并显示在屏幕上。 #includestdio.h main

    13、() FILE *fp;char ch; fp=fopen(“filea.dat“,“r“); _; /*第一空*/ while(_(fp);putchar(ch);ch=_;/*第二、三空*/ putchar(/n);fclose(fp); (分数:6.00)填空项 1:_五、B程序设计题/B(总题数:2,分数:16.00)33.编写一个程序,其功能是输出 101000 之间的所有素数之和。(分数:8.00)_34.采用递归调用的算法编写一个计算 x的 n次方的函数(主函数调用省略)。(分数:8.00)_高级语言程序设计自考题-21 答案解析(总分:100.00,做题时间:90 分钟)一、B

    14、单项选择题/B(总题数:15,分数:30.00)1.以下叙述中错误的是_ A.使用三种基本结构构成的程序只能解决一些简单的问题 B.结构化程序设计提倡模块化 C.C语言是结构化程序设计语言 D.结构化程序的基本结构为顺序、选择、循环(分数:2.00)A. B.C.D.解析:考点 C 语言的特点 解析 使用顺序、选择、循环三种基本结构构成的程序可以解决所有问题,而不是简单问题,所有 A错误。2.现有定义 int a;double b;float c;char k;则表达式 a/b+c-k的值的类型为_ A.int B.float C.double D.char(分数:2.00)A.B.C. D.

    15、解析:考点 运算量类型转换规律 解析 按照“就长不就短”的规则,double 长度最长,最后类型都转化为 double。3.当整型变量 c的值不为 2,4,6 时,值也为“真”的表达式是_ A.(c=2)|(c=4)|(c=6) B.(c=2 B.char a=/a; C.char a=bb; D.char a=/x1d;(分数:2.00)A.B.C. D.解析:考点 字符变量初始化 解析 bb 是字符串,字符串的表示要用双引号,可以赋给字符数组或字符指针,变量,但字符串不能赋给字符变量,只能给字符变量赋值单个字符。5.若有说明:int *p.m=15,n;以下正确的程序段是_ A.p=sca

    16、nf(“%d, B.p=scanf(“%d“,*p); C.scanf(“%d“,*p=n; D.p=*p=m;(分数:2.00)A.B.C.D. 解析:考点 指针及其赋值 解析 “char *ptr;ptr=str;执行完以上程序段后*(ptr+6)的值为_ A./0 B.o C./o D.O(分数:2.00)A. B.C.D.解析:考点 字符串数组和字符串的特点 解析 字符串数组的下标是从 0开始,*(ptr+6)指针移到“!”后一位,字符串的后面系统都会自动加 上/0作为结束符,所以答案为/0。7.有以下程序:#includestdio.hmain()int x;scanf(“%d“,i

    17、f(x=3);elseif(x!=10)printf(“%d/n“,x);程序运行时,输入的值在哪个范围才能有输出结果_ A.不等于 10的正数 B.大于 3或等于 10的正数 C.大于 3且不等于 10的整数 D.小于 3的正数(分数:2.00)A.B.C. D.解析:考点 if-else 语句 解析 if-else 控制结构中,else 总是与最近的未配对的 if匹配。本题的执行过程为:如果输入的整数小于 3则不进行任何操作,否则判断是否等于 10,若为真则执行。8.设有如下说明:typedef struct STlong a;float b;char c3;N;以下说法正确的是_ A.N

    18、是一个结构体变量 B.说明形式非法 C.ST是一个结构体类型 D.N是一个结构体类型(分数:2.00)A.B.C.D. 解析:考点 关键字 typedef 解析 题中形式定义 N表示 ST的结构类型,然后可以用 N来说明结构体变量。9.当调用函数时,形参是一个数组名,则向函数传递的是_ A.数组的大小 B.数组的地址 C.所有数组元素的地址 D.数组每个元素的值(分数:2.00)A.B. C.D.解析:考点 参数的传递 解析 对于一个数组而言,其数组名代表其首地址。10.有以下函数:int fun(char *x,char *y)int i=0;while(*x=*y)y+;i+;return

    19、 i;函数的功能是_ A.将 y所指字符串赋给 x所指存储空间,覆盖 x B.查找 x和 y所指字符串中是否有/0 C.统计 x和 y所指字符串中最前面连续相同的字符个数 D.统计 x和 y所指字符串中相同的字符个数(分数:2.00)A.B.C. D.解析:考点 循环语句及指针 解析 本题中由循环条件可知:遇到/0或 x与 y所指字符的值不相等中的一个条件时就结束,所以功能是统计 x和 y所指字符串中最前面连续相同的字符个数。11.在一个 C源程序文件中所定义的全局变量,其作用域为_ A.由具体定义位置和 extern说明来决定范围 B.所在程序的全部范围 C.所在函数的全部范围 D.所在文件

    20、的全部范围(分数:2.00)A. B.C.D.解析:考点 全局变量的范围 解析 全局变量的作用域是从声明处到文件结束,所以选择 A。12.以下程序运行后,输出的结果是_main()char *s=“story“;s+=2;printf(“%1d/n“,s); A.字符o的地址 B.字符o的 ASCII码 C.ory D.出错(分数:2.00)A. B.C.D.解析:考点 指针的移动及 printf语句 解析 s 为指针,指向字符串“story”,s+=2 表示指针向右移两位指向o。printf 语句中,输出项为 s而不是*s,是一个地址,所以输出o的地址。13.以下说法中正确的是_ A.#de

    21、fine和 printf都是 C语句 B.printf是 C语句,但#define 不是 C.#define是 C语句,而 printf不是 D.#define和 printf都不是 C语句(分数:2.00)A.B. C.D.解析:考点 宏定义的特点 解析 #define 是宏语句,而不是 C语句。14.下面程序段执行后输出的结果是_#includestdio.hmain()int a22=1,2,3,4,*p,i;p=for(i=0;i2;i+)*p+=i+1;printf(“%d“,%(p-2); A.4 B.2 C.3 D.1(分数:2.00)A.B.C.D. 解析:考点 循环语句及二维

    22、数组指针 解析 p=char *p;p=ps;while(*p+);return(p-ps); A.将字符串 ps复制到 p中 B.求字符串的长度 C.比较两个字符串的大小 D.程序出错(分数:2.00)A.B. C.D.解析:考点 循环语句与字符串 解析 p=ps 把指针 ps赋给 p,while(*p+)先判断*p 是否为/0不是则把指针移到字符的下一位 p+,判断为/0,退出返回(p-ps),此时 p指向字符串的最后一位,(p-ps)为字符个数,即字符串长度。二、B填空题/B(总题数:10,分数:20.00)16.按照计算机语言的发展历史,计算机语言大致可分为三类:机器语言、汇编语言和_

    23、。(分数:2.00)填空项 1:_ (正确答案:高级语言)解析:考点 C 语言基础知识 解析 计算机语言分为机器语言、汇编语言和高级语言。17.C程序是由_组成的,其中主函数的名字必须是_。(分数:2.00)填空项 1:_ (正确答案:函数,main)解析:考点 C 语言基础知识 解析 C 程序是 C语句组成的语句序列,通常一个 C程序包括一个或多个函数,其中有且仅有一个称为主函数,其函数名规定为 main。18.注释部分以_开始,以_结束。(分数:2.00)填空项 1:_ (正确答案:/*,*/)解析:考点 C 语言基础知识 解析 用/*/括住的任意字符序列,称为注释。19.程序中使用了字符

    24、串函数(如 strcmp),则必须包含的头文件名为_。(分数:2.00)填空项 1:_ (正确答案:string.h)解析:考点 文件包含命令 解析 使用字符串常用系统函数时,要在程序的开头写上命令#includestring.h。20.以下内循环语句执行了_次。 int i,j; for(i=5;i;i-) for(j=0;j4;j+)(分数:2.00)填空项 1:_ (正确答案:4)解析:考点 for 循环 解析 内循环的循环条件为 j4,所以 03,循环了 4次。21.设有定义:int a5=4,8;则 a0=_,a3=_。(分数:2.00)填空项 1:_ (正确答案:4,0)解析:考点

    25、 一维数组的初始化 解析 一维数组初始化时,从下标 0开始按顺序存放元素,元素个数不足时,系统自动赋 0。22.已知: structint day;char month;int year;a,*b,b=可用 a.day引用结构体中的成员 day,请写出通过指针变量 b引用成员 a.day的其他两种形式,它们是_和_。(分数:2.00)填空项 1:_ (正确答案:b-day,(*b).day)解析:考点 指向结构型变量的指针变量 解析 通过指向结构型变量的指针变量引用结构体成员的方式有两种:(*指针变量).成员名和指针变量-成员名。23.从文件中读一个字符,可调用函数_。(分数:2.00)填空项

    26、 1:_ (正确答案:fgetc(),fscanf())解析:考点 读字符函数 解析 从文件中读单个字符时,可以使用 fgetc()函数。24.语句 printf(“a/bre“h1/y/bou/n“);输出的结果是_。(分数:2.00)填空项 1:_ (正确答案:re“h1“you)解析:考点 转义字符 解析 /b 为左退一格符号,/为单引号,/为反斜杠,/n 为回车换行符。25.C语言中 fputc()函数对文本文件的存取是以_为单位的。(分数:2.00)填空项 1:_ (正确答案:字符)解析:考点 写字符函数 解析 fputc 函数对文本文件,写入的是单个字符,对二进制文件写入的是数据的

    27、一个字节。三、B程序分析题/B(总题数:4,分数:16.00)26.main() int i,k=5,a10,p3; for(i=0;i10;i+)ai=i; for(i=0;i3;i+)pi=ai*(i+1); for(i=0;i3;i+)k+=pi*2; printf(“%d/n“,k); (分数:4.00)_正确答案:(21)解析:27.请在该程序右侧写出其输出结果。 int aa33=3,4,6; main() int j,*p= for(j=0;j2;j+) if(j=0) aajj+1=*p+2; else +p; printf(“%d“,*p); (分数:4.00)_正确答案:(

    28、35)解析:28.#includestdio.h #includestring.h main() char *p1,*p2,str50=“abcd“; p1=“abcd“;p2=“abcd“; strcpy(str+1,strcat(p1,p2); printf(“%s/n“,str); (分数:4.00)_正确答案:(aabcdabcd)解析:29.struct stu int num; char name10; int age ; void py(struct stu *p) printf(“%s/n“,(*p).name); main() struct stu student3=1001

    29、,“Sun“,25, 1002,“Ling“,23, 1003,“Shen“,22; py(student+1); (分数:4.00)_正确答案:(Ling)解析:四、B程序填充题/B(总题数:3,分数:18.00)30.以下程序是求矩阵 a和 b的和,结果存入矩阵 c中,并按矩阵形式输出。 #includestdio.h main() int a34=3,-2,1,5,1,0,4,-3,6,8,0,2; int b34=-2,0,1,4,5,-1,7,6,6,8,0,2; int I,j,c34; for(_) /*第一空*/ for(_) /*第二空*/ cij=_;/*第三空*/ for

    30、(i=0;i3;i+) for(j=0;j4;j+) printf(“%3d“,ci|j); (分数:6.00)填空项 1:_ (正确答案:i=0;i3;i+ j=0;j4;j+ aij+bij)解析:31.下列函数的主要功能是在 w指向的数组的前*n 个数据中插入 x,要求 w指向的数组的前*n 个数据按由小到大顺序存放。插入 x后,该数组中的数据仍按照从小到大的顺序排列,同时将*n 修改为插入 x后的长度。 void f(char *w,char x,int *n) int i,p=0; w*n=x; while(xwp)_; /*第一空*/ for(i=*n;ip;i-)wi=_;/*第

    31、二空*/ wp=x; _; /*第三空*/ (分数:6.00)填空项 1:_ (正确答案:p+ wi-1 +*n)解析:32.以下函数的功能是从名为“filea.dat“的文本文件中逐个读入字符并显示在屏幕上。 #includestdio.h main() FILE *fp;char ch; fp=fopen(“filea.dat“,“r“); _; /*第一空*/ while(_(fp);putchar(ch);ch=_;/*第二、三空*/ putchar(/n);fclose(fp); (分数:6.00)填空项 1:_ (正确答案:ch=fgete(fp) !feof fgetc(fp))

    32、解析:五、B程序设计题/B(总题数:2,分数:16.00)33.编写一个程序,其功能是输出 101000 之间的所有素数之和。(分数:8.00)_正确答案:(main() long s=OL; int k,m,flag; for(k=10;k1001;k+) flag=1; for(m=2;m=k/2;m+) if(k%m=0)flag=0;break; if(flag)s+=k; printf(“s=%1d/n“,s); )解析:34.采用递归调用的算法编写一个计算 x的 n次方的函数(主函数调用省略)。(分数:8.00)_正确答案:(double power(double x,int n) if(n=0)return(1);/*当 n=0时返回值 1*/ else return(x*power(x,n-1);/*递归调用函数 power()本身,整个递归调用过程的操作请参见课本。*/ )解析:


    注意事项

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




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

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

    收起
    展开