[计算机类试卷]国家二级(C语言)笔试模拟试卷204及答案与解析.doc

上传人:花仙子 文档编号:503368 上传时间:2018-11-29 格式:DOC 页数:28 大小:80.50KB
下载 相关 举报
[计算机类试卷]国家二级(C语言)笔试模拟试卷204及答案与解析.doc_第1页
第1页 / 共28页
[计算机类试卷]国家二级(C语言)笔试模拟试卷204及答案与解析.doc_第2页
第2页 / 共28页
[计算机类试卷]国家二级(C语言)笔试模拟试卷204及答案与解析.doc_第3页
第3页 / 共28页
[计算机类试卷]国家二级(C语言)笔试模拟试卷204及答案与解析.doc_第4页
第4页 / 共28页
[计算机类试卷]国家二级(C语言)笔试模拟试卷204及答案与解析.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

1、国家二级( C语言)笔试模拟试卷 204及答案与解析 1 下面关于算法的叙述中,正确的是 ( )。 ( A)算法的执行效率与数据的存储结构无关 ( B)算法的有穷性是指算法必须能在执行有限个步骤之后终止 ( C)算法的空间复杂度是指算法程序中指令 (或语句 )的条数 ( D)以上三种描述都正确 2 下列二叉树描述中,正确的是 ( )。 ( A)任何一棵二叉树必须有一个度为 2的结点 ( B)二叉树的度可以小于 2 ( C)非空二又树有 0个或 1个根结点 ( D)至少有 2个根结点 3 如果进栈序列为 A, B, C, D,则可能的出栈序列是 ( )。 ( A) C, A, D, B ( B)

2、 B, D, C, A ( C) C, D, A, B ( D)任意顺序 4 下列各选项中,不属于序言性注释的是 ( )。 ( A)程序标题 ( B)程序设计者 ( C)主要算法 ( D)数据状态 5 下列模式中,能够给出数据库物理存储结构与物理存取方法的是 ( )。 ( A)内模式 ( B)外模式 ( C)概念模式 ( D)逻辑模式 6 下列叙述中,不属于软件需求规格说明书的作用的是 ( )。 ( A)便于用户,开发人员 进行理解和交流 ( B)反映出用户问题的结构,可以作为软件开发工作的基础和依据 ( C)作为确认测试和验收的依据 ( D)便于开发人员进行需求分析 7 下列不属于软件工程

3、3个要素的是 ( )。 ( A)工具 ( B)过程 ( C)方法 ( D) D环境 8 数据库系统在其内部具有 3级模式,用来描述数据库中全体数据的全局逻辑结构和特性的是 ( )。 ( A)外模式 ( B)概念模式 ( C)内模式 ( D)存储模式 9 将 E-R图转换到关系模式时,实体与联系都可以表示成 ( )。 ( A)属性 ( B)关系 ( C)记录 ( D)码 10 某二叉树中度为 2的结点有 10个,则该二叉树中有 ( )个叶子结点。 ( A) 9 ( B) 10 ( C) 11 ( D) 12 11 C语言规定,在一个 c程序中, main()函数的位置 ( )。 ( A)必须在系

4、统调用的库函数之后 ( B)必须在程序的开始 ( C)必须在程序的最后 ( D)可以在任意位置 12 以下叙述中正确的是 ( )。 ( A) C语言比其他语言高级 ( B) C语言可以不用编译就能被计算机识别执行 ( C) C语言以接 近英语国家的自然语言和数学语言作为语言的表达形式 ( D) C语言出现的最晚,具有其他语言的一切优点 13 已知 int a=6;则执行 a+=a-=a*a:语句后, a的值为 ( )。 ( A) 36 ( B) 0 ( C) -24 ( D) -60 14 下列叙述中错误的是 ( )。 ( A) C语句必须以分号结束 ( B)复合语句在语法上被看作一条语句 (

5、 C)空语句出现在任何位置都不会影响程序运行 ( D)赋值表达式末尾加分号就构成赋值语句 15 若有定义: int a=7; float x=2 5,y=4 7;则表达式 x+a 3*(int)(x+y) 2/4的值是 ( )。 ( A) 2 500000 ( B) 2 750000 ( C) 3 500000 ( D) 0 000000 16 若下列选项中的各变量均为整型且已有值,其中不正确的赋值语句是 ( )。 ( A) +i; ( B) n1=(n2/(n3=2); ( C) k=i=j; ( D) a=b+c=2; 17 下列关于逻辑运算符两侧运算对象的叙述中正确的是 ( )。 ( A

6、)只能是整数 0或 1 ( B)只能是整数 0或非 0整数 ( C)可以是结构体类型的数据 ( D)可以是任意合法的表达式 18 若有说明 int a34;则 a数组元素的非法引用是 ( )。 ( A) a02*1 ( B) a13 ( C) a420 ( D) a04 19 下列说法不正确的是 ( )。 ( A) int*ptr;指针指向整形数据 ( B) char*ptr;指针的类型是字符型指针 ( C) int*ptr;指针的类型是双重指针 ( D) int(*ptr)3;是一个指针数组,数组共有三个元素 ,而三个元素是 int型指针 20 有以下程序 #include void mai

7、n() char s=“01aXy”); int i, n=0; for(i=0; si!=0; i+) if(si=z)n+; printf(“ d n”, n); 程序运行后的输出结果是 ( )。 ( A) 0 ( B) 2 ( C) 3 ( D) 5 21 有以下程 序: #include main() int a=1, 2,3,4, y*p= a3; -p; y=*p; printf(“y= d n”,y); 程序的运行结果是 ( )。 ( A) y=0 ( B) y=1 ( C) y=2 ( D) y=3 22 下面的 for语句的循环次数为 ( )。 for(x=1, y=0; (

8、y!=19)sj; sj=t; main() char*ss: “bcc”,“bbcc”, “xy”, “aaaacc”, “aabcc”); fun(ss, 5); printf(“ s, s n”, ss0, ss4); 程序的运行结果是 ( )。 ( A) xy,aaaacc ( B) aaaacc, xy ( C) bcc, aabcc ( D) aabcc, bcc 34 若已定义: int a=0, 1, 2, 3, 4, 5, 6, 7, 8, 9, *p=a, i; 其中 0i9,则对 a数组元素不正确的引用是 ( )。 ( A) ap-a ( B) *( ai) ( C) p

9、i ( D) a10 35 C语言中,凡未指定存储类别的局部变量的隐含存储类别是 ( )。 ( A) 自动 (auto) ( B)静态 (statiC ( C)外部 (extern) ( D)寄存器 (register) 36 以下叙述中不正确的是 ( )。 ( A)预处理命令行都必须以撑号开始,结尾不加分号 ( B)在程序中凡是以群号开始的语句行都是预处理命令行 ( C) C程序在执行过程中对预处理命令进行处理 ( D)预处理命令可以 放在程序中的任何位置 37 以下程序的输出结果是 ( )。 #include #define F(x)2 84+x #define w(y)printf(“

10、d”, (int)(y) #define P(y)w(y) main() int x=2; P(F(5)*x); ( A) 12 ( B) 13 ( C) 14 ( D) 16 38 设有下面的定义: struct st int a; float b; d; int*p; 要使 P指向结构变量 d中的 a成员,正确的赋值语句是 ( )。 ( A) *p=d a; ( B) p= a; ( C) p=d a; ( D) p= d-a; 39 交换两个变量的值,不允许用临时变量,应该使用下列 ( )位运算符。 ( A) ( B) ( C) ( D) 40 如果需要打开一个已经存在的非空文件 “FI

11、LE”并进行修改,正确的语句是( )。 ( A) fp=fopen(“FILE”,“r”); ( B) fp=fopen(“FILE”, “a+”); ( C) fp=fopen(“FILE”,“w+”); ( D) fp=fopen(“FILE”,“r+”); 41 在算法正确的前提下,评价一个算法的两个标准是空间复杂度和 _。 42 二叉树的遍历可以分为三种:前序遍历、 _遍历和后序遍历。 43 软件危机出现于 20世纪 60年代末,为了解决软件危机,人们提出了 _的原理来设计软件,这就是软件工程诞生的基础。 44 _是指用户的应用程序与数据 库的逻辑结构是相互独立的,也就是说,数据的逻辑

12、结构改变了,用户程序也可以不变。 45 程序测试分为静态测试和动态测试。其中 _是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。 46 若 a: 1, b=2, c=3, d=4;则条件表达式 ab?a:cb) c=1; else if(a=b)c=0; else c=-1: printf(“ d n”, C; 49 下面程序的运行结果是 _。 #include main() int a,s, n, m; a=2; s=0; n=1; m=1; while(m #include main() char c; int a, s=0; whilel(_) if(i

13、sdigit(C a=c-0; s+=a; printf(“s= d”, s); 51 下面程序的输出结果是 _。 #include main() static char a: “zhao”,b=“juan”; char*ptr1=a,*ptr2=b; intk; for(k=0; k main() char a80, *p: “AbabCDcd”; int i=0,j=0; while(*(p+)!= 0) if(*p=a&*p typedef struct int num; double s; REC; void funl(REC *x) x-num=23; x-s=88 5; void

14、main() REC a=16, 90 0; funl(&a); printf(“ d n”, a num); 程序运行后的输出结果是 _。 55 下面程序的运行结果是 _。 #define P(a)printf(“ d”, a) main() intj, a=1, 2, 3, 4, 5, 6, 7, i=5; for(j=3; j1; j-) switch(j) case 1: case 2: P(ai+); break; case 3: P(a-i); 国家二级( C语言)笔试模拟试卷 204答案与解析 1 【正确答案】 B 【试题解析】 算法在运行过程中需辅助存储空间的大小称为算法的空间

15、复杂度。算法的有穷性是指一个算法必须在执行有限的步骤以后结束。 2 【正确答案】 B 【试题解析】 二叉树是由 n0个结点的有限集合构成,此集合或者为空集,或者由一个根结点及两棵互不相交的左右子树组成,并且左右子树都是二叉树。二叉树可以是空集合,根可以有空的左子树或空的右子树。二叉树不是树的特殊情况,它们是两个概念。 二叉树具有如下两个特点: 非空二叉树只有一个根结点。 每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。 3 【正确答案】 B 【试题解析】 栈的操作原则为后进先出。选项 B中出栈顺序可按 “A进, B进, B出, C进, D进, D出, C出, A出 ”实现。 4 【

16、正确答案】 D 【试题解析】 注释一般为序言性注释和功能性注释。序言性注释常位于程序开头部分,它包括程序标题、程序功能说明、主要算法、接口说明、程序位置、开发简历、程序设计者、复审者、复审日期及修改日期等。功能性注释一般嵌在源程序体之中,用于描 述其后的语句或程序的主要功能。 5 【正确答案】 A 【试题解析】 数据库管理系统的三级模式结构由外模式、模式和内模式组成。 外模式,或子模式,或用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图。模式,或逻辑模式,是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和。外模式是模式的一部分。内模式,或存储模式,或物理

17、模式,是指数据在数据库系统内的存储介质上的表示,即对数据的物理结构和存取方式的描述。 6 【正确答案】 D 【试题解析】 软件需求 规格说明书有以下几个方面的作用: 便于用户、开发人员进行理解和交流。 反映出用户问题的结构,可以作为软件开发工作的基础和依据。 作为确认测试和验收的依据。 7 【正确答案】 D 【试题解析】 软件工程包括 3个要素,即方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。 8 【正确答案】 B 【试题解析】 概念模式,也称逻辑模式,是对数据库系统中全局数据逻辑结构的描述,是全体用户应用公 共

18、数据视图。它不涉及具体的硬件环境与平台,与具体的软件环境也无关。 9 【正确答案】 B 【试题解析】 E-R图由实体、实体的属性和实体之间的联系 3个要素组成,关系模型的逻辑结构是一组关系模式的集合,将 E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转化为关系模式。如下表所示。 10 【正确答案】 C 【试题解析】 根据二叉树的性质 3:对任何一棵二叉树,度为 0的结点 (即叶子结点 )总是比度为 2的结点多一个。 11 【正确答案】 D 【试题解析】 每个 c程序有且只有一个主 函数 (main),且程序必须从 main()函数开始执行,而且 main()函数可以放在程序中的任意

19、位置。 12 【正确答案】 C 【试题解析】 此题考查的是 C语言的基本特点。 C语言是一种高级编程语言,但并不是比其他语言高级; C语言源程序必须经过编译生成目标文件才能被计算机识别执行; C语言出现比较晚,它既有优点也有缺点,而并不是具有其他一切语言的优点。 13 【正确答案】 D 【试题解析】 此题考查的是赋值表达式。执行语句 “a+=a-=a*a: ”时,首先执行a=a a*g=-30,然后执行 a=a+a=-60。 14 【正确答案】 C 【试题解析】 C语言规定每条语句和数据定义的最后必须有一个分号,分号是 c语句的必要组成部分。复合语句也称为 “语句块 ”,其形式如下: 语句 1

20、;语句2; 语句 n; ,即用一对大括号把若干语句括起来构成一个语句组。一个复合语句在语法上视为一条语句,在一对花括号内的语句数量不限。一个赋值表达式的最后加一个分号就成为一条语句,即赋值语句。空语句是只有一个分号的语句,它什么也不做,程序设计中有时需要加一个空语句来表示存在一条语句,但随意加分号会导致逻辑上的错误,而 且这种错误十分隐蔽,编辑器也不会提示逻辑错误,需要慎用。 15 【正确答案】 A 【试题解析】 此题考查的是变量的类型转换。表达式中 (int)(x+y)把 x+y=(7 2)的值强制转化成整型即得到 7,那么 a 3*(int)(x+y) 2的值为整型常量 1,所以 a3*(

21、inC(x+y) 2 4的值为 0;因为变量 x是浮点型变量,所以表达式 x+a3*(int)(x+y) 2 4的结果也是浮点型,得到 2 500 000。 16 【正确答案】 D 【试题解析】 本题考查赋值表达式。赋值表达式的一 般形式是:变量名 =表达式。 C语言规定,不能给变量表达式赋值。 17 【正确答案】 D 【试题解析】 逻辑运算符两侧的运算对象可以是任意合法的表达式。逻辑表达式的运算结果或者为 1(“真 ”),或者为 0(“假 ”)。 18 【正确答案】 D 【试题解析】 此题考查的是数组元素的引用。对于已定义的数组 aMN,数组元素的正确引用必须满足行下标小于 M,列下标小于

22、N且为正整数。此题中,选项 D中列下标值出现溢出。 19 【正确答案】 D 【试题解析】 int(*ptr)3是一个数组指 针,指针指向一个有 3个 int型变量的数组。 20 【正确答案】 A 【试题解析】 这段程序的功能求出字符串 s中字符的 ASCII码小于小写字符 a并且大于小写字符 z的字符的个数。因为小写字符 z的 ASCII码大于小写字符 a的ASCII码,所以满足 a的 ASCII码并且大于 z的的 ASCII码的字符是不存在的,所以输出 0。 21 【正确答案】 D 【试题解析】 程序首先定义了一个一维数组和指针,接着将数组第 4个元素的地址赋给 *p,进行 -p使指针 p指

23、向了数组的第 3个元素;通过 y=*p,将数组第 3个元素的值 3赋给了 y,所以选项 D正确。 22 【正确答案】 D 【试题解析】 本题考查 for循环。只考虑 x的取值变化, x从 1取到 5,可以循环 5次,但是并不知道 y是如何变化的,有可能出现 y=19提前跳出循环的情况,所以是最多执行了 5次。 23 【正确答案】 C 【试题解析】 本题考查 if语句。先判断 if语句的条件是否成立,因为 +十a=10,所以条件成立,又因为是进行逻辑或运算,在已知其中一个运算对象为真的情况下,不必判断另外一个运算对象的真假,即不进行 +b操作,就可以直接得出整个表达式的 值为逻辑 1,执行下面的

24、 +c。 24 【正确答案】 A 【试题解析】 题中 while循环的条件是:当从键盘读入的字符不是 n时,执行while循环。 输入第一个字符 3时:执行 case 0,什么也不输出; case 1,输出 7; case 2,输出 7;遇到 break语句,跳出 switch语句。输入第二个字符 8时: c-3=5,不执行任何语句。输入第三个字符 4时: c-3=1,执行 case1。输出 8; case 2,输出 8;遇到 break语句,跳出 switch语句。输入第四个字符 5时: c-3=2,执行 case2,输出 9;遇到 break语句,跳出 switch语句。 25 【正确答案

25、】 D 【试题解析】 本题考查函数调用时的数值类型。函数调用时,函数返回值的类型既不由主调函数类型所决定,也不由 return语句中的表达式类型所决定,更不是由系统临时决定,而是由定义该函数时所指定的数值类型所决定。 26 【正确答案】 D 【试题解析】 scanf函数中的 “ c”表示通过键盘只读入一个字符型的数据, “&c”表示将该数据赋值给 c,所以 c=4。另外,以 “ d”格式读入数据时,只有 遇到空格或者换行等间隔时符才停止读入,所以 i=56, m=789。 27 【正确答案】 C 【试题解析】 本题考查函数调用时的参数传递。 fun函数的调用形式为 fun(int*b, int

26、 c, int d)。调用数组时,用数组名表示一个指向数组的第一个元素的指针,因此调用时的形式为 fun(a, 8, 4)。 28 【正确答案】 C 【试题解析】 &是取地址运算符, Y=&B是将 B的地址赋给 Y,因此 Y值为EF01。 29 【正确答案】 B 【试题解析】 本题主要考查的是函数的递归调 用,子函数 f是一个递归函数,所以主函数中执行 fa, 2)时,其执行过程是 a3+fa, 1)=: a3+a2+f(a, 0)=7。 30 【正确答案】 D 【试题解析】 本题考查如何对二维数组的元素赋值。 选项 A,数组第二维的大小是 4,但是却赋值了 5个元素,数组溢出;选项 B,C语

27、言规定,对于二维数组,只可以省略第一个方括号中的常量表达式,而不能省略第二个方括号中的常量表达式;选项 C,数组第一维的大小是 2,但是赋值超过了 2;选项 D,在对二维数组元素赋初值时,可以只对部分元素赋初值,未赋 初值的元素自动取 0。 31 【正确答案】 A 【试题解析】 本题考查一维数组的赋值。一维数组的一般定义格式为:类型说明符数组名【常量表达式】。其中, “”中的内容可以是整型常量,也可以是整型表达式。选项 A中的 N是一个变量,所以错误。 32 【正确答案】 B 【试题解析】 *s-*t的输出实际是比较两个字符的 ASC 码值,比较两个字符串的大小。 33 【正确答案】 A 【试

28、题解析】 从 main函数入手,定义了一个一维数组并赋初值,接着调用函数胁 (),函数的功能是:比较数组中各元 素的长度,按元素长度从小到大的顺序排列元素,所以执行 fun(ss, 5)函数后, *ss=“xy”, “bcc”, “bbcc”, “aabcc”,“aaaacc”,所以调用 printf函数输出 ss0, ss4的值分别为 xy, aaaacc。 34 【正确答案】 D 【试题解析】 此题考查对一维数组的引用。对于已定义的数组 a脚 M,数组元素的正确引用必须满足下标小于 M且为正整数。选项 D中下标值出现溢出。 35 【正确答案】 A 【试题解析】 本题考查数据存储类型的基本知

29、识点。凡未指定存 储类别的局部变量的隐含存储类型都默认为自动类型。 36 【正确答案】 C 【试题解析】 本题考查预处理命令的特点。编译预处理命令的特点有: 为了区分一般的语句,预处理命令行都必须以 #开始,结尾不加分号; 预处理命令可以放在程序中的任意位置; 在程序中凡是以 #开始的语句都是预处理命令行。 37 【正确答案】 A 【试题解析】 本题考查带参数的宏定义及相关运算。 P(F(5)*x)=p(2 84+5*2)=P(12 84),调用 w(12 84),输出 (int)(12 84)=12。 38 【正确答案】 D 【试题解析】 本题主要考查按结构数组元素方式引用结构成员。结构体变

30、量的成员引用方法有 3种: 结构体变量名成员名; 指针变量名 成员名; (*指针变量名 )成员名。因为 p是指针变量,所以应该将地址值赋给 p。 39 【正确答案】 B 【试题解析】 按逻辑位运算的特定作用主要有 3点: 用按位与运算将特定位清0或保留特定位; 用按位或运算将特定的位置设置为 1: 用按位异或运算将某个变量的特定位翻转或交换两个变量的值。 40 【正确答案】 D 【试题解析】 本题 考查打开文件函数 fopen(),打开文件函数 fopen()的调用形式为: fp=fopen(文件名,文件使用方式 )。 “文件使用方式 ”说明:方式 “r”为以输入方式打开一个文本文件;方式 “

31、a+”为以读写方式打开一个文本文件,保留文件中原有的数据;方式 “w+”为以读写方式建立一个新的文本文件:方式 “什 ”为以读写方式打开一个文本文件。 41 【正确答案】 时间复杂度 【试题解析】 在算法正确的前提下,评价一个算法的两个标准是空间复杂度和时间复杂度。算法的时间复杂度,是指执行算法所需要的计算工作量。算 法的空间复杂度是指执行这个算法所需要的内存空间。 42 【正确答案】 中序 【试题解析】 二叉树的遍历可以分为三种:前序遍历、中序遍历和后序遍历。 前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树;并且遍历左、右子树时,仍然

32、先访问根结点,然后遍历左子树,最后遍历右子树。 中序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且遍历左、右子树时,仍然先遍历左子树,然后访问根结点 ,最后遍历右子树。 后序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历右子树,然后访问根结点,最后遍历左子树;并且遍历左、右子树时,仍然先遍历右予树,然后访问根结点,最后遍历左子树。 43 【正确答案】 软件工程学 【试题解析】 为了消除软件危机,通过认真研究解决软件危机的方法,认识到软件工程是使计算机软件走向工程科学的途径,逐步形成了软件工程的概念,开辟了工程学的新兴领域

33、软件工程学。 44 【正确答案】 逻辑独立性 【试题解析】 数据独立性包括数据的物理独立性 和逻辑独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。数据在磁盘上的数据库中怎样存储是由 DBMS管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变时,应用程序不用改变。逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不变。 45 【正确答案】 静态测试 【试题解析】 静态测试指不在计算机上运行被测试程序,而采用其他手段来达到对程序进行检测的目的,包括人工测试和计算机辅助静态 分

34、析方法。动态测试指通过在计算机上运行被测试程序,并用所设计的测试用例对程序进行检测的方法。 46 【正确答案】 3 【试题解析】 “表达式 17表达式 2:表达式 3”的功能是:表达式 l的值若为非0,则计算表达式 2的值,且表达式 2的值为最终结果;若表达式 1的值为 0,则计算表达式 3的值,且为最终结果。逻辑符号从右向左结合, ab 7 a: cb?a: (cb?a: c, a=1, b=2, ab不成立,所以整个表达式最后的值 为 c的值。 47 【正确答案】 2 【试题解析】 本题考查表达式的运算。因为 x=1, y=2,所以表达式 (x+y)2=3 2=1, (int)a, (in

35、t)b=(int)(3 2)=1,因此整个表达式的结果为 (x+y)2+(int)a(int)b=1+1=2。 48 【正确答案】 -1 【试题解析】 if-else语句的形式: if(表达式 ) 语句 l elseif 语句 2 else 语句 3 它的功能是:若表达式的值为真,执行语句 1,并跳过其他 语句,执行 if else语句的下一条语句,若表达式的值为假,跳过语句 1,执行语句 2。依次往下判断:a=1, b=2,条件 ab不成立,继续判断 a=b,仍不成立,则执行 c=-1,输出 -1。 49 【正确答案】 s=30 【试题解析】 分析循环条件 “m=1, m=4”,所以循环 4

36、次。第 1次: n=n*a=2,s=s+n=2; m=2。第 2次: n=n*a=4, s=s+n=6; m=3。第 3次: n=n*a=8,s=s+n=14; m=4。第 4次: n=n*a=16, s=s+n=30。 50 【正确答案】 (c=getchar()!=n 【试题解析】 分析题目可知,程序中运用函数 c=getchar()从标准输入设备读取下一个字符,而且是一行的字符 (即没有换行 ),所以条件为 (c=getchar()!= n。isdigfc(C函数的功能是判断字符 c是否数字 0 9。 51 【正确答案】 a 【试题解析】 本程序先将指针 ptr1和 ptr2分别指向字符

37、数组 a和 b,然后通过指针的移动比较 a和 b中是否有相同的字符,若有相同的字符则将其输出。 52 【正确答案】 si!=0 【试题解析 】 本题是要删除字符数组中和 c一样的字符, for循环实现的功能是逐个读出字符数组 s中的元素,并和字符 c做比较,直到遇到字符串结束标志 0,结束循环,所以横线上应该填 si!= 0。 53 【正确答案】 babcd 【试题解析】 C语言中 0表示字符串的结束。程序将 p指针指向字符串“AbabCDcd”的首地址,循环开始后,若指针当前不是指向字符串结束标志位,则进入循环体。循环中每次检验字符串中字母是否在 a与 z之间,若满足则将当前值赋于数组 a,

38、最后给数组添加字符结束标志。此程序可以筛选出字符 串中的小写字母。 54 【正确答案】 23 【试题解析】 在主函数中定义了结构体变量 a,并对其成员赋初值 16和 90 0,然后调用函数 fun1(a),把变量 a的值复制一份赋给形参变量 x,在子函数 fun1()中分别对变量 x的成员赋值,函数把形参 x的值返回,而此时变量 a中的值发生变化,所以输出变量 a的成员 num的值为 23。 55 【正确答案】 5 5 【试题解析】 分析程序执行过程,第一次循环时, j=3, i=5,因为 switch(3),所以执行 case 3,调用 P(a-i)=P(a4)=P(5),输出 5;第二次循环时, j=2, i=4,因为 switch(2),所以执行 c&qe 2,调用 P(ai+)=P(a4)=P(5),输出 5,之后 i自加1等于 5。

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

当前位置:首页 > 考试资料 > 职业资格

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