首页 > 全部 > 二级C语言 > 国家二级(C语言)机试模拟试卷487

国家二级(C语言)机试模拟试卷487

本单篇文档共16897字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 模拟试卷 1034人下载
价格: 1.00 原价:¥8.00
收藏

国家二级(C语言)机试模拟试卷487

选择题

1.一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是( )。(B)

A. 12345ABCDE

B. EDCBA54321

C. ABCDE12345

D. 54321EDCBA

解析:栈是按照“先进后出”的原则组织数据的,入栈的顺序为12345ABCDE,则出栈的顺序应为其逆序,即EDCBA54321。

2.结构化程序设计的基本原则不包括( )。(A)

A. 多态性

B. 自顶向下

C. 模块化

D. 逐步求精

解析:结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。

3.若变量都已正确说明,则以下程序段输出结果为( )。

#include<stdio.h>

main()

{char a=’a’;

intb=2;

printf(a>b?’’***a=%d’’:’’###b=%d’’,a,b);

}(D)

A. ***a=3

B. ###b=3

C. ***a=3###b=5

D. 全部错误

解析:本题考查printf函数的格式和三目运算符“?:”的使用。printf函数中格式说明符之前插入的任何字符都原样输出。本题中“a>b”为真,所以返回“***a=97”。

4.有以下程序:

main()

{int k=33;

printf(\\(D)

A. 33,033,0x21

B. 33,033,21

C. 33,041,021

D. 33,41,21

解析:本题考查不同进制间的转换。printf输出函数中输出变量的格式,由输出格式符决定。题中“%o”格式符表示以八进制的形式输出;“%x”格式符表示以十六进制的形式输出。“33”的八进制和十六进制分别是41和21。

5.定义如下变量和数组:

int i,x[3][3]={1,2,3,4,5,6,7,8,9};

则下面语句的输出结果是( )。

for(i=0;i<3;i++)printf(\\(C)

A. 159

B. 147

C. 357

D. 369

解析:本题主要考查二维数组的使用。题中利用for循环来输出x数组中的指定元素:①当i=0时,输出x[0|][2]=3:②当i=1时,输出x[1][1]=5;③当i=2时,输出x[2][0]=7。

6.以下叙述中正确的是( )。(C)

A. 语句char a[2]={\\

B. 语句int a[]={0};是不合法的,遗漏了数组的大小

C. 语句int a[8]={0};是合法的

D. 语句char a[3];a=\\

解析:考查一维数组以及字符数组的初始化。初始化的时候可以只给数组的前面一部分元素设定初值,故C正确。字符数组中的每个元素为一个字符,需要用单引号,选项A错。若对数组全部元素赋初值时,可以不指定数组元素的个数,选项B错。定义字符数组时可以将字符串直接赋给该字符数组,其他情况则不可以,选项D错。答案选C。

7.对下图二叉树

(C)

A. DYBEAFCZX

B. YDEBFZXCA

C. ABDYECFXZ

D. ABCDEFXYZ

解析:前序遍历是指在访问根节点、遍历左子树与遍历右子树这三者中,首先访问根节点,然后遍历左子树,最后遍历右子树;并且,在遍历左右子树时,仍然先访问根节点,然后遍历左子树,最后遍历右子树。前序遍历描述为:若二叉树为空,则执行空操作。否则:①访问根节点;②前序遍历左子树;③前序遍历右子树,故答案C正确。

8.一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是(  )。(B)

A. 12345ABCDE

B. EDCBA54321

C. ABCDE12345

D. 54321EDCBA

解析:栈是先进后出的原则组织数据,所以入栈最早的最后出栈,所以选择B。

9.结构化程序设计的基本原则不包括( )。(A)

A. 可封装

B. 自顶向下

C. 模块化

D. 逐步求精

解析:结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。

10.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。(B)

A. 一对一

B. 一对多

C. 多对一

D. 多对多

解析:因为一间宿舍可以住多个学生即多个学生住在一个宿舍中,但一个学生只能住一问宿舍,所以实体宿舍和学生之间是一对多的关系。

11.以下叙述中正确的是( )。(A)

A. C程序中注释部分可以出现在程序中任意合适的地方

B. C程序的书写格式是固定的,每行只能写一条语句

C. 构成C程序的基本单位是函数,所有函数名都可以由用户命名

D. 在对C语言程序进行编译时,可以发现注释行中的拼写错误

解析:本题考查的是C语言程序设计的初步知识。选项A),程序中/*……*/表示注释部分,注释只是给人看的,对程序的编译和运行不起作用,可以在程序中的任何位置;选项B),C语言的书写格式自由,一行可以写多条语句,一条语句也可以写在不同行上;选项C),一个C程序中必须有且只能有一个由“main”命名的主函数,其他函数由用户自行命名;选项D),程序的注释仅仅是提供阅读之用,并不参与程序的编译,所以编译也就不会发现注释行中的错误。

12.己知下列函数定义:

fun(int*int c,int amint data)

{int k;

for(k=0;k<m*n;k++)

{*b=data;

b++;}

}

则调用此函数的正确写法是(假设变量a的说明为int a[501)( )。(D)

A. fun(*a,4,5,1);

B. fun(&a,4,5,1);

C. fun((int*)a,4,5,1);

D. fun(a,4,5,1);

解析:本题考查函数调用时的参数传递。fun函数的调用形式为fun(int *b,int m,int n,int data),而调用数组时,用数组名表示一个指向数组第一个元素的指针,因此调用时的形式为fun(a,4,5,1)。

13.有以下程序:

#include

struct tt

{Int x;struct tt*y;}*p;

struct tt a[4]={20,a+1,15,a+2,30,a+3,17,a};

main()

{ int i;

p=a

本文档预览:3600字符,共16897字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级(C语言)机试模拟试卷487

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号