[计算机类试卷]国家二级C语言程序设计机试(选择题)模拟试卷1及答案与解析.doc
《[计算机类试卷]国家二级C语言程序设计机试(选择题)模拟试卷1及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言程序设计机试(选择题)模拟试卷1及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言程序设计机试(选择题)模拟试卷 1及答案与解析 一、选择题 1 下列叙述中正确的是 ( )。 ( A)所谓算法就是计算方法 ( B)程序可以作为算法的一种描述方法 ( C)算法设计只需考虑得到的计算结果 ( D)算法设计可以忽略算法的运算时间 2 程序流程图中带有箭头的线段表示的是 ( )。 ( A)图元关系 ( B)数据流 ( C)控制流 ( D)调用关系 3 深度为 5的完全二叉树的结点数不可能是 ( )。 ( A) 15 ( B) 16 ( C) 17 ( D) 18 4 下列选项中不属于结构化程序设计原则的是 ( )。 ( A)可封装 ( B)自顶向下 ( C)模块化
2、( D)逐步求精 5 下列关于栈的叙述中正确的是 ( )。 ( A)栈按 “先进先出 ”组织数据 ( B)栈按 “先进后出 ”组织数据 ( C)只能在栈底插入数据 ( D)不能删除数据 6 下列描述中不属于软件特点的是 ( )。 ( A)软件是一种逻辑实体,具有抽象性 ( B)软件在使用中不存在磨损、老化问题 ( C)软件复杂性高 ( D)软件使用不涉及知识产权 7 计算机软件的构成是 ( )。 ( A)源代码 ( B)程序和数据 ( C)程序和文档 ( D)程序、数据及相关文档 8 按照 C语言规定的用户标识符命名规则,不能出现在标识符中的是 ( )。 ( A)下画线 ( B)大写字母 (
3、C)数字字符 ( D)连接符 9 设有表示学生选课的三张表,学生 S(学号,姓名,性别,年龄,身份证号 ),课程 C(课号,课名 ),选课 SC(学号,课号,成绩 ),则表 SC的关键字 (键或码 )为( )。 ( A)课号,成绩 ( B)学号,成绩 ( C)学号,课号 ( D)学号,姓名,成绩 10 有两个关系 R和 T如下: 则由关系 R得到关系 T的操作是 ( )。 ( A)投影 ( B)交 ( C)选择 ( D)并 11 以下叙述中正确的是 ( )。 ( A)不同函数的形式参数不能使用相同名称的标识符 ( B)用户自己定义的函数只能调用库函数 ( C)实用的 C语言源程序总是由一个或多
4、个函数组成 ( D)在 C语言的函数内部,可以定义局部嵌套函数 12 以下叙述中错误的是 ( )。 ( A) C程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件 ( B) C语言中的每条可执行语 句和非执行语句最终都将被转换成二进制的机器指令 ( C)用 C语言编写的程序称为源程序,它以 ASC 代码形式存放在一个文本文件中 ( D) C语言源程序经编译后生成后缀为 .obj的目标程序 13 设有两行定义语句: int scanf; float case; 则以下叙述中正确的是 ( )。 ( A)第 2行语句不合法 ( B)两行定义语句都合法 ( C)第 1行语句不合法 (
5、 D)两行定义语句都不合法 14 以下各项中,能正确表述算式 sin(2r+30)的 C语言表达式是 ( )。 ( A) sin(2*r+30) ( B) sin(2*3 14*r+30) ( C) sin(2*3 14*r+3 14*30 180 0) ( D) sin(2*3 14*r+30*3 14 360 0) 15 若有定义: int a, b, c;,则以下选项中的赋值语句正确的是 ( )。 ( A) a=(b=c)=1; ( B) (a=b)=c=1; ( C) a=(b=c)+1; ( D) a+b=c; 16 有以下程序: #include main() printf(“ d
6、 n”, NULL); 程序运行后的输出结果是 ( )。 ( A) 1 ( B)变量无定义,输出不确定 ( C)一 1 ( D) 0 17 设有定义: double x=2 12;,则以下各项中不能完整输出变量 x值的语句是( )。 ( A) printf(“x= 5 of n”, x); ( B) prinff(“x= f n”, x); ( C) prinff(“x= If n”, x); ( D) prinff(“x= 0 5f n”, x); 18 若有定义: char c; iht d;,程序运行时输入: c=1 d=2,能把字符 l输入给变量 c、把整数 2输入给变量 d的输入语句
7、是 ( )。 ( A) scanf(“c= c d= d”, c, &d); ( B) scanf(“c= cd= d”, &c, &d); ( C) scant“(“c= d d= d”, &c, &d); ( D) scant“(“c= dd= d”, &c, &d); 19 若有定义 int x, y;并已正确给变量赋值,则以下选项中与表达式 (xy)?(x+): (y+)中的条件表达式 (xy)等价的是 ( )。 ( A) (xy0) ( B) (xy0) ( D) (xy=0) 20 有以下程序: #include main() char a=H; a=(a=A& a #define
8、 f(x)x*x*x main() int a=3, s, t; s=f(a+1); t=f(a+1); prinff(“ d, d n”, *, t); 程序运行后的输出结果是 ( )。 ( A) 10, 64 ( B) 10, 10 ( C) 64, 10 ( D) 64, 64 23 在一个 C源程序文件中所定义的全局变量,其作用域为 ( )。 ( A)所在文件的全部范围 ( B)所在程序的全部范围 ( C)所在函数的全部范围 ( D)由具体定义位置和 extem说明来决定范围 24 有以下程序: #include void main() char a, b, C, d; scanf(“
9、 c c”, a, b); c=getchar(); d=getchar(); prinff(“ c c c c n”, a, b, c, d); 当执行程序时,按下列方式输入数据 (从第一列开始, 代表回车,注意:回车是一个字符 ): 12 34 则输出结果是 ( )。 ( A) 1234 ( B) 12 ( C) 123 ( D) 1234 25 有以下程序: #include void fun(int x) if(x 21)fun(x 2); prinff(“ d”, X); void main() fun(7); prinff(“ n”); 程序运行后的结果是 ( )。 ( A) 13
10、7 ( B) 731 ( C) 73 ( D) 37 26 有以下程序: #include int b=2; int fun(int*k) b=*k+b; return(b); void main() int a10=1, 2, 3, 4, 5, 6, 7, 8, i; for(i=2; i int f(int x, int y) return(yx)*x); void main() int a=3, b=4, c=5, d; d=f(f(a, b), f(a, c); prinff(“ d n”, d); 程序运行后的输出结果是 ( )。 ( A) 9 ( B) 10 ( C) 8 ( D)
11、 7 29 以下叙述中正 确的是 ( )。 ( A)函数调用时,不必区分函数名称的大小写 ( B)调用函数时,函数名必须与被调用的函数名完全一致 ( C)函数名允许用数字开头 ( D)在函数体中只能出现一次 return语句 30 以下叙述中正确的是 ( )。 ( A)当对文件的读 (写 )操作完成之后,必须将它关闭,否则可能导致数据丢失 ( B)打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖 ( C)在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第 1个数据 ( D) C语言中的文 件是流式文件,因此只能顺序存取数据 31 有以下程序: #in
12、clude int m1(int x, int y) return x #include void main() char a10=“abc”, b10=“012”, c10=“xyz”; strcpy(a+1, b+2); puts(strcat(a, c+1); 程序运行后的输 出结果是 ( )。 ( A) a12xyz ( B) 12yz ( C) a2yz ( D) bc2yz 33 以下叙述中正确的是 ( )。 ( A)如果企图通过一个空指针来访问一个存储单元,将会得到一个出错信息 ( B)即使不进行强制类型转换,在进行指针赋值运算时,指针变量的基类型也可以不同 ( C)设变量 p是
13、一个指针变量,则语句 p=0;是非法的,应该使用 p=NULL; ( D)指针变量之间不能用关系运算符进行比较 34 以下叙述中正确的是 ( )。 ( A)如果 p是指针变量,则 &p是不合法的 表达式 ( B)如果 p是指针变量,则 *p表示变量 p的地址值 ( C)在对指针进行加、减算术运算时,数字 1表示 1个存储单元的长度 ( D)如果 p是指针变量,则 *p+1和 *(p+1)的效果是一样的 35 有以下程序: #include #include void fun(int: *s, int x23) *s=*(x1+1); void main() int a23=1, 2, 3, 4
14、, 5, 6, *p; P=(int*)malloc(sizeof(int); fun(&p, a); printf(“ d n”, *P); 程序的运行结果是 ( )。 ( A) 5 ( B) 2 ( C) 6 ( D) 3 36 有以下程序: #include main() int a=2, 3, 5, 4, i; for(i=0; i void main() int X=0x13; if(x=0x18)prinff(“T”); prinff(“F n”); 程序运行后的结果是 ( )。 ( A) TF ( B) T ( C) F ( D) TFT 38 下面结构体的定义语句中,错误的是
15、( )。 ( A) struct ordint x; int y; int z; struct ord a: ( B) struct ordint x; int y; int z; ; struct ord a; ( C) struct ordint x; int y; int z; a; ( D) structint x; int y; int z; a; 39 有以下程序: #include void fun(int n) static int x3=1, 2, 3; int k; for(k=0; k void main() unsigned char a=8, c; c=a3; pri
16、ntf(“ d n”, c); 程序运行后的输出结果是 ( )。 ( A) 32 ( B) 16 ( C) 1 ( D) 0 国家二级 C语言程序设计机试(选择题)模拟试卷 1答案与解析 一、选择题 1 【正确答案】 B 【试题解析】 算法是一组有穷指令集,是解题方案的准确而完整的描述。通俗地说,算法就是计算机解题的过程,重在解题方案的设计,并且不等于计算方法,故 A和 C选项不正确。程序的编制不可能优于算法的设计,但算法的描述可以用程序、伪代码、流程图来描述,故 B选项正确。算法要求执行过程中所需要的基本运算次数和时间最少,即时间复杂度最低,所以 D选项不正确。正确答案为B。 2 【正确答案
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言程序设计 选择题 模拟 答案 解析 DOC
