1、计算机二级C 语言程序设计(A )试题(开卷)1、填空题(每空 2 分,共 20 分)1机器语言即是指计算机本身自带的 。2将汇编语言编写的程序翻译成机器语言程序的过程称为 ,完成这 个翻译工作的程序称为 。3在 C 语言中,写一个十六进制的整数,必须在它的前面加上前缀 。4在 C 语言中,是以 作为一个字符串的结束标记的。5任何一个数组的数组元素具有相同的名字和 。6同一数组中,数组元素之间是通过 来加以区分的。7在 C 语言中,指针就是一个 。8在 C 语言中,指针变量就是专门用来存放变量 的变量。9C 语言中,在函数调用时使用的参数,称为 实际参数 ;在函数定义时,函数头中列出的参数,称
2、为 。2、选择题(每题 2 分,共 30 分)1以下有关增 1、减 1 运算符中,只有( )是正确的。A-a B+100 Ca-b+ Da+2逻辑表达式 5那么表达式 x y ? (x = 1) : (y = -1) 运算后,x 和 y 的值分别是( )。A1 和-1 B1 和 3 C5 和-1 D5 和 34设有变量说明:float x = 4.0, y = 4.0;。使 x 为 10.0 的表达式是( )。Ax -=y * 2.5 Bx /= y + 9 Cx *= y - 6 Dx += y + 25设有变量说明:int a = 7, b = 8;。那么语句: printf (“%d,
3、%dn”, (a + b, a), (b, a + b);的输出应该是( )。A7, 15 B8, 15 C15, 7 D15, 86设有变量说明:int x = 3, y = 4;。那么执行语句:printf (“%d, %dn”, ( x, y ), ( y, x )后,输出的结果是( )。A3,4 B3,3 C4,3 D4,47设有变量说明:int x = 010, y = 10;。那么执行语句:printf (“%d, %dn”, +x, y- )后,输出的结果是( )。A11,10 B9,10 C010,9 D10,98 break 语句不能出现在( )语句中。Aswitch Bfo
4、r Cwhile Dif-else9在下面给出的语句中,( )是对一维数组正确赋初值的语句。Aint a10 = “This is a string”; Bchar a = “This is a string”;C int a3 = 1, 2, 3, 4, 5, 0; Dchar a3 = “This is a string”;10如果有以下说明语句:char ab =”123456”;char ac =1, 2, 3, 4, 5, 6; 那么下面说法中正确的是( )。A数组 ab 和 ac 的长度相等 B数组 ab 的长度小于数组 ac 的长度C数组 ab 与 ac 完全一样 D数组 ab
5、的长度大于数组 ac 的长度11有说明语句:int a 4 = 1, 5, 8, 7, 12, 22, 9, 41, 55, 27;。则数组 a 第 1 维的长度应该是( ) 。A2 B3 C4 D512若有说明语句:int b10, *q;那么对语句:“q = b;”的不正确叙述是( ) 。A使 q 指向数组 b B把元素 b0的地址赋给 qC使 q 指向元素 b0 D把数组 b 的各元素的地址赋给 q13数组名与指向它的指针变量的关系是( )。A可以通过数组名访问指针变量B可以通过指针变量访问数组名C可以通过指针变量访问数组中的元素D可以通过数组元素访问指针变量14以下关于字符串与指针的描
6、述,正确的是( )。A字符串中的每个字符都是指针 B可以用一个 char *型指针指向字符串15当一个函数具有( )类型时,它与调用者的前后位置关系可以忽略。Avoid Bfloat Cdouble Dint3、程序阅读题(每题 8 分,共 32 分)1、若变量 a、 b 都是 int 型的。当 b 分别取值 1、2 、3、4、5、6 时,试问以下程序段运行后变量 a 的取值分别是多少:if (b 3)if (b 5)a = 10;elsea = -10;elsea = 0;答:a 的取值分别是: 2、阅读下面的程序,写出其执行结果。#includemain()int a = 10, b =
7、14, c = 3;if (ab) a = b;if (ac) a = c;printf (“a=%d, b=%d, c=%dn”, a, b, c);答:输出结果是:3 、阅读程序,说明其功能及输出的结果:#include “stdio.h”main()int k;char x, a10=a, b, c, d, e, f, g, h, i, j;for (k = 0; k5; k+)x = ak;ak = a9-k;a9-k = x;for (k=0; k10; k+)printf (“%c”, ak);答:最后的输出结果是:4、阅读程序,说明运行后的输出结果:#include “stdio
8、.h”main()int x, j, a10 = 1;for (j=1; j10; j+)x = aj-1*2;if (j % 2)x = -x ;aj = x ;for (j=0; j10; j+)printf (“%d ”, aj);printf (“n”);答:最终的输出结果是:4、程序设计(18 分)1、编写一个程序,输出 150 中间所以能被 3 整除的正整数。C 语言程序设计 课程考试试卷答案要点及评分细则一、填空题(每空 2 分,共 20 分)1、指令系统 。2 汇编 , 汇编程序。3 0x 。4 0 。5 数据类型 。6 下标 7、 地址 。8、 地址 9、 形式参数二、选择题
9、(每题 2 分,共 30 分)DBBAA CBDBD DBCBD三、程序阅读题(每题 6 分,共 30 分)1、答:a 的取值分别是:0,0,0,-10,-10 ,10 2、答:输出结果是:a=14, b=14, c=3。3、答:最后的输出结果是:jihgfedcba4、答:最终的输出结果是:1 -2 -4 8 16 -32 -64 128 256 -512四、程序设计1、编写一个程序,输出 150 中间所以能被 3 整除的正整数。#include “stdio.h”int main () int i;for (i=1;i=50;i+)if(i%3= =0) printf(“ %d “,i);return 0 ;