下半年计算机二级考试C语言模拟试题及答案六

合集下载

国家二级C语言机试(公共基础知识)模拟试卷6(题后含答案及解析)

国家二级C语言机试(公共基础知识)模拟试卷6(题后含答案及解析)

国家二级C语言机试(公共基础知识)模拟试卷6(题后含答案及解析)题型有:1. 选择题选择题1.在E-R图中,用来表示实体联系的图形是A.椭圆形B.矩形C.菱形D.三角形正确答案:C解析:构成E-R图的基本要素是实体型、属性和联系,其表示方法为:实体型(Entity)一用矩形表示;属性(Attribute)-椭圆形表示,联系(Relationship)一用菱形表示,菱形框内写明联系名。

知识模块:公共基础知识2.在E-R图中,用来表示实体的图形是A.矩形B.椭圆形C.菱形D.三角形正确答案:A解析:在E一R图中,用矩形表示实体集,在矩形内写上该实体集的名字;用椭圆形表示属性;用菱形(内部写上联系名)表示联系。

知识模块:公共基础知识3.数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段正确答案:C解析:E—R模型(实体联系模型)是将现实世界的要求转化成实体、联系、属性等几个基本概念,以及它们间的两种基本联接关系,并且可用一种图非常直观地表示出来。

它属于数据库设计的概念设计阶段。

知识模块:公共基础知识4.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是A.一对一B.一对多C.多对一D.多对多正确答案:B解析:两个实体集间的联系可以有下面几种:一对一的联系、一对多或多对一的联系和多对多的联系。

由于一个宿舍可以住多个学生,所以它们的联系是一对多联系。

知识模块:公共基础知识5.一个工作人员可使用多台计算机,而一台计算机被多个人使用,则实体工作人员与实体计算机之间的联系是A.一对一B.一对多C.多对多D.多对一正确答案:C解析:如果一个工作人员只能使用一台计算机且一台计算机只能被一个工作人员使用,则关系为一对一:如果一个工作人员可以使用多台计算机,但是一台计算机只能被一个工作人员使用,则关系为一对多;如果一个工作人员可以使用多台计算机,一台计算机也可以被多个工作人员使用,则关系为多对多。

C语言计算机二级考试题目及答案

C语言计算机二级考试题目及答案

C语言计算机二级考试题目及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是正确的整型常量表示?A. 0x123B. 123.0C. '123'D. 123e2答案:A2. 下列哪个关键字用于定义C语言中的函数?A. structB. intC. voidD. return答案:B3. 在C语言中,以下哪个选项是合法的变量名?A. 2variableB. variable2C. _2variableD. int答案:B4. C语言中,以下哪个选项是正确的数组声明?A. int array[10];B. int array[];C. int array[10][];D. int array[3][5];答案:D5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. =D. ==答案:A6. 在C语言中,以下哪个选项是正确的字符串声明?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str = "Hello";D. char str[] = {"Hello"};答案:A7. C语言中,以下哪个选项是正确的函数定义?A. int function(int x, int y) { return x + y; }B. int function(int x, int y) = { return x + y; }C. int function(int x, int y) { return x + y; } intD. int function(int x, int y) { return x + y; }答案:A8. 在C语言中,以下哪个选项是正确的文件包含指令?A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio.h>D. #include "stdio.h"答案:A9. 下列哪个选项是C语言中的正确注释?A. /* This is a comment */B. // This is a commentC. /* This is a comment */D. // This is a comment答案:A10. 在C语言中,以下哪个选项是正确的指针声明?A. int *ptr;B. int *ptr = 0;C. int ptr = 0;D. int *ptr = 0;答案:A二、填空题(每题2分,共20分)1. 在C语言中,用于定义一个结构体的关键字是______。

计算机二级c语言试题及答案解析

计算机二级c语言试题及答案解析

计算机二级c语言试题及答案解析一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0123C. 0x123.456D. 0123456答案:A解析:在C语言中,十六进制常量以0x或0X开头,后跟十六进制数字。

选项A表示十六进制数,是合法的整型常量。

选项B表示八进制数,选项C表示浮点数,选项D是无效的表示。

2. 下列哪个选项是C语言中的关键字?A. switchB. caseC. defaultD. all of the above答案:D解析:在C语言中,switch、case和default都是关键字。

switch用于条件分支,case用于指定分支条件,default用于指定默认分支。

3. 在C语言中,以下哪个选项是合法的字符常量?A. 'A'B. "A"C. '\t'D. 'AB'答案:C解析:在C语言中,字符常量用单引号括起来,可以是单个字符或转义字符。

选项A是合法的字符常量,但选项B是字符串常量。

选项C 是合法的转义字符,表示水平制表符。

选项D是两个字符,不是合法的字符常量。

4. 在C语言中,以下哪个选项是合法的数组声明?A. int a[];B. int b[10];C. int c[10] = {0};D. all of the above答案:D解析:在C语言中,A选项声明了一个未指定大小的整型数组,B选项声明了一个大小为10的整型数组,C选项声明了一个大小为10的整型数组并初始化所有元素为0。

所有选项都是合法的数组声明。

5. 在C语言中,以下哪个选项是合法的函数声明?A. int func(int x);B. int func(int);C. int func();D. int func(int, int);答案:D解析:在C语言中,函数声明需要指定返回类型、函数名和参数列表。

计算机二级c语言机试题及答案

计算机二级c语言机试题及答案

计算机二级c语言机试题及答案一、选择题(每题2分,共40分)1. 在C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. typedef答案:A2. 下列关于数组的描述中,错误的是:A. 数组可以存储不同类型的数据B. 数组的下标从0开始C. 数组在定义时必须指定大小D. 数组可以作为函数的参数答案:A3. 在C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. _variableD. variable-答案:C5. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B6. 以下哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. goto答案:B7. 以下哪个选项是C语言中合法的函数定义?A. int function(int x, int y)B. int function(int, int)C. int function()D. int function(int x; int y)答案:A8. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. fcloseC. fprintfD. All of the above答案:D9. 以下哪个选项是C语言中合法的宏定义?A. #define PI 3.14159B. #define PI = 3.14159C. #define PI 3.14159D. #define PI 3.14159答案:A10. 在C语言中,以下哪个选项是正确的注释方式?A. /* This is a comment */B. // This is a commentC. //* This is a commentD. /* This is a comment */答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用___________关键字可以定义一个枚举类型。

计算机二级《C语言》模拟试题及答案

计算机二级《C语言》模拟试题及答案

计算机二级《C语言》模拟试题及答案计算机C语言是学计算机设计的根底语言,同学们学得怎么样了呢?为同学分享最新的C语言考试题库,希望能帮助到大家学习!1.算法的空间复杂度是指( )。

A.算法程序的长度B.算法程序中=的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间2.以下表达中正确的选项是( )。

A.一个逻辑数据构造只能有一种存储构造B.逻辑构造属于线性构造,存储构造属于非线性构造C.一个逻辑数据构造可以有多种存储构造,且各种存储构造不影响数据处理的效率D.一个逻辑数据构造可以有多种存储构造,且各种存储构造影响数据处理的效率3.简单的交换排序方法是( )。

A.快速排序B.选择排序C.堆排序D.冒泡排序4.关于构造化程序设计原那么和方法的描述错误的选项是( )。

A.选用的构造只准许有一个入口和一个出口B.复杂构造应该用嵌套的根本控制构造进展组合嵌套来实现C.不允许使用GOT0语句D.语言中假设没有控制构造,应该采用前后一致的方法来模拟5.相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和( )。

A.可重用性差B.平安性差C.非持久性D.冗余性6.面向对象的设计方法与传统的面向过程的方法有本质不同,它的根本原理是( )。

A.模拟现实世界中不同事物之间的联系B.强调模拟现实世界中的算法而不强调概念C.使用现实世界的概念抽象地思考问题从而自然地解决问题D.不强调模拟现实世界中的算法而强调概念7.软件设计包括软件的构造、数据接口和过程设计,其中软件的过程设计是指( )。

A.模块间的关系B.系统构造部件转换成软件的过程描述C.软件层次构造D.软件开发过程8.两个或两个以上模块之间关联的严密程度称为( )。

A.耦合度B.内聚度C.复杂度D.数据传输特性9.以下描述错误的选项是( )。

A.继承分为多重继承和单继承B.对象之间的通信靠传递消息来实现C.在外面看不到对象的内部特征是基于对象的“模块独立性好”这个特征D.类是具有共同属性、共同方法的对象的集合10.数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是( )。

全国计算机二级C语言全真模拟试卷(含答案解析)

全国计算机二级C语言全真模拟试卷(含答案解析)

(1)下列数据结构中,能用二分法进行查找的是( )。

A)无序线性表B)线性链表C)二叉链表D)顺序存储的有序表(1)D) [解析]二分法查找只适用于顺序存储的有序表,表中的元素按值从小到大排列。

(2)下面说法正确的是( )。

A) 一个C程序可以有多个主函数B) 一个C语言的函数中只允许有一对花括号C)C程序的书写格式是自由的,一个语句可以写在一行上,也可以写在多行内D)在对C程序进行编译时,可以发现注释行中的拼写错误(2)c) 【解析】本题涉及c语言基本的3个知识点:①c语言规定一个程序只允许有一个主函数,一个函数内可以允许有多个花括号;②c程序的注释部分仅仅是方便程序员阅读,提高程序的可读性和可移植性,它并不参与程序的编译,所以编译器也就不会发现注释中的错误。

(3)设有如下关系表,由关系R和S通过运算得到关系T,则所使用的运算为( )A)T=R∩SB)T=R∪SC)T= R×SD)T=R/S(3)B) 【解析】,就是关系R中插入关系S,合并为,即并运算(U)。

(4)数据库的故障恢复一般是由( )来执行恢复。

A)电脑用户B)数据库恢复机制C)数据库管理员D)系统普通用户(4)C) 【解析】数据库一旦发生故障,需要及时进行故障恢复,并由数据库管理员负责执行故障恢复。

(5)设一棵满二叉树共有15个结点,则在该满二叉树中的叶子结点数为( )。

A)7B)8C)9D)10(5)B) 【解析】在具有11个结点的满二又树,其非叶子结点数为int(n/2),而叶子结点数等于总结点数减去非叶子结点数。

本题n=15,故非叶子结点数等于int(15/2)=7,叶子结点数等于15-7=18。

(6)下列关于线性表的叙述中,不正确的是( )。

A)线性表可以是空表B)线性表是一种线性结构C)线性表的所有结点有且仅有一个前件和后件D)线性表是由n个元素组成的一个有限序列(6)C) 【解析】线性表是一种线性结构,由n(n≥0)个元素组成,所以线性表可以是空表。

计算机二级《C语言》模拟试题及答案3篇

计算机二级《C语言》模拟试题及答案3篇

计算机二级《C语言》模拟试题及答案第一篇:C语言基础知识1. C语言的发明人是谁?简要介绍一下他的背景。

2. int型变量的取值范围是多少?unsigned int呢?3. 请问下面这段代码输出的结果是什么?char str1[] = "hello";char str2[] = "world";strcat(str1, str2);printf("%s", str1);4. 以下哪些数据类型可以用来存储浮点数?A. floatB. doubleC. long doubleD. char5. 下列代码的输出结果是什么?int a = 1;long b = 2;float c = 3.0;printf("%ld\n", a + b + c);答案:1. C语言的发明人是丹尼斯·里奇(Dennis Ritchie)。

他于1941年出生在美国,是贝尔实验室研究员和计算机科学家。

在20世纪70年代,他和肯·汤普逊(Ken Thompson)合作,发明了UNIX操作系统和C语言。

C语言是一种高级计算机程序语言,在操作系统、编译器、数据库、游戏等领域被广泛使用。

丹尼斯·里奇因发明了C语言,被誉为“计算机编程之父”。

2. int型变量的取值范围是-2147483648到2147483647,unsigned int的取值范围是0到4294967295。

3. 输出结果为“helloworld”。

strcat是C语言的字符串拼接函数,将两个字符串连接成一个字符串。

在拼接之前,需要保证第一个字符串的数组足够大,以容纳两个字符串的内容。

如果第一个字符串不够大,程序会出现内存溢出等问题。

4. A、B、C三个数据类型可以用来存储浮点数。

5. 输出结果为“6”。

在printf函数中,%ld表示输出长整型数据,而c是一个float型变量。

计算机二级试题c语言试题及答案

计算机二级试题c语言试题及答案

计算机二级试题c语言试题及答案计算机二级试题 C 语言试题及答案一、选择题1. 下面哪个选项是关于 C 语言的描述?A. C 语言是一种面向过程的编程语言。

B. C 语言是一种面向对象的编程语言。

C. C 语言是一种支持并发的编程语言。

D. C 语言是一种解释型的编程语言。

答案:A2. 下面哪个选项是定义一个整型变量的正确方式?A. int x;B. x as Integer;C. int x = 0;D. Integer x;答案:A3. 下面哪个选项是计算整型变量 y 的平方的正确方式?A. y * 2;B. y ^ 2;C. pow(y, 2);D. y * y;答案:D二、填空题1. 下面这段代码的输出是什么?```c#include <stdio.h>int main() {int x = 5;int y = 2;float result = x / y;printf("%f", result);return 0;}```答案:2.0000002. 下面这段代码的输出是什么?```c#include <stdio.h>int main() {int x = 7;int y = 3;printf("%d", x % y);return 0;}```答案:1三、简答题1. 请简述 C 语言中指针的概念及用途。

答:C 语言中的指针是指存储变量内存地址的变量,通过指针可以访问内存中的内容。

指针的用途包括但不限于以下几个方面: - 动态内存管理:通过指针可以在运行时分配内存和释放内存,灵活地管理内存空间。

- 数组访问:通过指针可以更高效地访问数组元素,通过指针进行数组操作。

- 函数传参:通过指针可以在函数之间传递复杂的数据结构,如数组、结构体等。

- 数据结构实现:指针可以用来实现各种数据结构,如链表、树等。

2. 请简述 C 语言中的控制结构 if 语句和 switch 语句的区别。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

下半年计算机二级考试C语言模拟试题及答案六一、选择题1.已知函数的调用形式:fread(buffer,size,count,fp);其中buffer 代表的是(B)。

A、一个存储区,存放要读的数据项B、一个指针,指向要读入数据的存放地址C、一个文件指针,指向要读的文件D、一个整数,代表要读入的数据项总数2.结构体类型的定义允许嵌套是指(A)。

A、成员是已经或正在定义的结构体型B、定义多个结构体型C、成员可以重名D、结构体型可以派生3.对结构体类型的变量的成员的访问,无论数据类型如何都可使用的运算符是(B)。

A、&B、.C、*D、->4.若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是(D)。

A、&t[1]B、t[3]C、&t[3][2]D、t[2]5.若有说明:int *p,m=5,n;以下正确的程序段是(D)。

A、scanf("%d",&n);*p=n;B、p=&n;scanf("%d",*p)C、p=&n;scanf("%d",&p);D、p=&n;*p=m;6.若定义:int a=511,*b=&a;, 则printf("%d\n",*b);的输出结果为(D)。

A、无确定值B、a的地址C、512D、5117.下列说法中正确的是(B ).A、函数调用不占运行时间,只占编译时间.B、宏替换不占运行时间,只占编译时间.C、有参数的宏定义,就是函数.D、在定义宏时,宏名与带参数的括弧之间可以加空格.C语言程序中,若对函数类型未加声明,则函数的类型系统默认为(C)。

A、voidB、doubleC、intD、char8.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是(A)。

A、函数调用可以作为一个函数的形参B、函数调用可以作为一个函数的实参C、函数调用可以作为独立的语句存在D、函数调用可以出现在表达式中9.对于void类型函数,调用时不可作为(B)。

A、循环体里的语句B、表达式C、if语句的成分语句D、自定义函数体中的语句10.C语言规定,函数返回值的类型是由(A)。

A、在定义该函数时所指定的函数类型所决定B、return语句中的表达式类型所决定C、调用该函数时系统临时决定D、调用该函数时的主调函数类型所决定11.以下定义语句中,错误的是(A)。

A、int n=5,a[n];B、int a[]={1,2};C、char s[10]="test";D、char *a[3];12.以下不能对二维数组a进行正确初始化的语句是(A)。

A、int a[2][3]={{1,2},{3,4},{5,6}};B、int a[][3]={{1,2},{0}};C、int a[2][3]={0};D、int a[][3]={1,2,3,4,5,6};13.在C语言中,引用数组元素时,其数组下标的数据类型允许是(B)。

A、整型常量B、整型常量或整型表达式C、整型表达式D、任何类型的表达式14.int a[10];合法的数组元素的最小下标值为(D)。

A、10B、9C、1D、015.下列数组说明中,正确的是(B)。

A、int array[][];B、int array[][4];C、int array[3][];D、int array[][][5];16.以下正确的描述是(A ).A、只能用continue语句来终止本次循环B、switch语句中不能出现continue语句C、在循环中break语句不能独立出现D、goto语句只能用于退出多层循环17.针对for循环语句,for(表达式1;表达式2;表达式3),下列说法正确的是(B ).A、break语句可以一次性跳出多层嵌套循环B、break语句只能跳出最内层循环C、continue语句可以一次性跳出多层嵌套循环D、continue语句不能跳出最外层循环18.下面程序正确的运行结果是(B ).(答案中用大写字母U代表空格)main(){int num=0;while(num<=2){num++;printf("=",num);}}A、UU1B、UU1UU2UU3C、UU1UU2UU3UU4D、UU1UU219.以下程序的执行结果是(B )。

main(){ int num = 0;while( num <= 2 ) { num++; printf( "%d,",num ); } }A、0,1,2B、1,2,3,C、1,2,3,4,D、1,2,20.C语言中,switch后的括号内表达式的值可以是( C)。

A、只能为整型和字符型B、只能为整型C、任何类型D、只能为整型,字符型,枚举型21.下列运算符中,不属于关系运算符的是(C)。

A、>=B、>C、!D、<22.下面说法不正确的是:(C )。

A、a为真b为假,则a&&b为假B、a为真b为假,!a&&b为假C、a为真b为假,则a||b为假D、a为真,!a-1为真23.以下运算符中,优先级最高的运算符是(D)。

A、==B、||C、%D、!24.已知键盘输入a=4,b=3,下面程序输出的结果是( C). main(){ int a,b,s;scanf("%d%d",&a,&b);s=a;if(a s=s*s;printf("%d\n",s);}A、9B、13C、16D、1525.为表示关系x>=y>=z,应使用C语言表达式为:( A)A、(x>=y)&&(y>=z)B、(x>=y)&(y>=z)C、(x>=y)AND(y>=z)D、(x>=y>=z)26.已定义float a; int i;选择正确的输入语句(C ).A、scanf("%6.2f=", &a,&i);B、scanf("%f%s", &a,&i);C、scanf("o=",&a,&i);D、scanf("%f%d", a,i);27.根据下面的程序,正确的输出形式是(A );main(){int i=5,j=10;printf ("i=%d,", i);printf ("j=%d ", j);}A、i=5, j=10B、10,5C、5,10D、i=5Uj=1028.若有以下程序:main(){int k=2,i=2,m;m=(k+=i*=k);printf("%d,%d\n",m,i);}29执行后的输出结果是(D )。

A、8,3B、7,4C、8,6D、6,430下列字符序列中,不可用作C语言标识符的是(C)。

A、b70B、a_1C、#abD、symbol31设C语言中,int类型数据占2个字节,则unsigned类型数据占(C)。

A、1个字节B、8个字节C、2个字节D、4个字节32已知f是float型的变量,对于语句f=(2.0,1.0,0.0),(3.0,4.0,5.0);的判断中,正确的是(B ).A、使 f 的值为5.000000B、使 f 的值为0.000000C、使 f 的值为2.000000D、语法错误33执行下列语句后变量x和y的值是(A)。

y=10;x=y++;A、x=10,y=11B、x=11,y=11C、x=11,y=10D、x=10,y=1034设有说明:char c; int x; double z;则表达式c*x+z值的数据类型为( C)。

A、charB、intC、doubleD、float35以下数据中,不正确的'数值或字符常量是(D)。

A、82.5B、0xff00C、10D、8.9e1.236若int a=2,则执行完表达式a-=a+=a*a后,a的值是(C )。

A、-4B、-8C、0D、-237以下运算符中,优先级最高的运算符是(C)。

A、!=B、*(乘号)C、( )D、=38下列数据中,为字符串常量的是(D)。

A、AB、How do you do.C、$abcD、"house"39以下标识符中,不能作为合法的C用户定义标识符的是(D)。

A、INTC、_doubleD、putchar40经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在微机上的值分别为(D)。

char x=65;float y=7.3;int a=100;double b=4.5;A、1,2,2,4B、2,4,2,8C、2,2,2,4D、1,4,2,841以下标识符中,不能作为合法的C用户定义标识符的是(B)。

A、a3_b3B、voidC、_123D、IF42能将高级语言编写的源程序转换为目标程序的是(A)。

A、编译程序B、链接程序C、解释程序D、编辑程序43C语言的注释定界符是(D)。

A、[ ]B、{ }C、\* *\D、/* */44C语言源程序的基本单位是(B)。

B、函数C、标识符D、过程45在下列程序段中,枚举变量c1,c2的值依次是(A)。

enum color {red,yellow,blue=4,green,white} c1,c2;c1=yellow;c2=white;printf("%d,%d\n",c1,c2);A、1,6B、2,5C、2,6D、1,446定义int a[ ]={0,1,2,3,4,5,6,7,8,9},*p=a,i;,其中0≤i≤9,则对a 数组元素的引用不正确的是____.CA、p[i]B、a[p-a]C、*(*(a+i))D、*(&a[i])47执行下面程序段后,ch的值是:____Dchar ch=’Z’;ch=(ch>=’A’&&ch<=’Z’)?(ch+32):ch;A、AB、ZC、aD、z48能正确进行字符串赋值操作的语句是_____ .AA、char *s; scanf("%s",s);B、char *s; s=’ABCDEF’;C、char s[5]={"ABCDE"};D、char s[5]={’A’,’B’,’C’,’D’,’E’};49按照C语言规定,程序中各函数之间,以下叙述不正确的是______.BA、主函数可以调用其它任何函数.B、允许嵌套定义.C、允许递归调用.D、允许嵌套调用.50.已经有prt( )函数的定义,假设以下各程序中对函数的说明是正确的,以下程序段中有语法错误的是( D ).A、main() { int k; void prt( );…prt(’A’);…}B、main() { int k; int prt( );…k=prt(’A’);…}C、main() { int k; char prt( );…k=k+prt(65);…}D、main(){ int k; void prt( );…k=prt(’A’);…}。

相关文档
最新文档