下半年计算机二级考试C语言模拟试题及答案六
国家二级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语言计算机二级考试题目及答案一、单项选择题(每题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语言试题及答案解析一、选择题(每题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语言机试题及答案一、选择题(每题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语言考试题库,希望能帮助到大家学习!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语言全真模拟试卷(含答案解析)
(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语言》模拟试题及答案第一篇: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 语言试题及答案一、选择题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 语句的区别。
计算机国家等级考试二级c试题及答案
计算机国家等级考试二级c试题及答案一、选择题(每题2分,共20分)1. 在C语言中,用于定义一个结构体的关键字是______。
A. structB. unionC. enumD. typedef答案:A2. 下列关于数组的描述中,错误的是______。
A. 数组可以存储相同类型的元素B. 数组的元素在内存中是连续存储的C. 数组的大小在定义时必须确定D. 数组的大小可以根据需要动态改变答案:D3. C语言中,用于字符串比较的函数是______。
A. strcmpB. strcpyC. strcatD. strlen答案:A4. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B5. 下列关于函数的描述中,正确的是______。
A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数的返回值类型必须与声明的一致D. 函数的参数可以是任意类型答案:C6. 在C语言中,用于定义指针的关键字是______。
A. intB. charC. floatD. void答案:D7. 下列关于循环的描述中,错误的是______。
A. for循环可以嵌套使用B. while循环可以无限循环C. do-while循环至少执行一次D. break语句可以用于任何循环答案:D8. 在C语言中,以下哪个关键字用于定义一个全局变量?A. staticB. externC. autoD. register答案:B9. 下列关于指针的描述中,错误的是______。
A. 指针可以指向任何类型的数据B. 指针可以作为函数的参数C. 指针可以指向函数D. 指针可以存储字符串答案:D10. 在C语言中,用于定义一个枚举类型的关键字是______。
A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的关键字是______。
下半年全国计算机二级C语言考前模拟试题及答案
下半年全国计算机二级C语言考前模拟试题及答案无论是在学校还是在社会中,我们最不陌生的就是试题了,试题是命题者根据一定的考核需要编写出来的。
什么样的试题才是好试题呢?以下是我收集整理的2023下半年全国计算机二级C语言考前模拟试题及答案,仅供参考,大家一起来看看吧。
下半年全国计算机二级C语言考前模拟试题及答案11). 关于C语言的变量,以下叙述中错误的是( )A.所谓变量是指在程序运行过程中其值可以被改变的量B.变量所占的存储单元地址可以随时改变C.程序中用到的所有变量都必须先定义后才能使用D.由三条下划线构成的符号名是合法的变量名正确答案:B答案解析:变量是指在程序运行过程中其值可以改变的值,一个变量实质上是代表了内存中的某个存储单元。
在程序中对某个变量的操作实际上就是对这个存储单元的操作,程序运行期间,这个分配的存储单元不会改变,但是其值可以变化。
变量命名要符合标识符的规定,其中下划线是标识符的组成字符。
程序中所有变量都必须先定义后使用。
2). 当变量c的值不为2、4、6时,值也为″真″的表达式是( )A.(c==2)||(c==4)||(c==6)B.(c>=2 选项C,在C语言中,整数可以十进制、八进制或十六进制的形式输出;选项D,getchar函数是从标准输入设备读取一个字符。
9). 以下结构体类型说明和变量定义中正确的是( )A.typedefstruct { int n; char c; } REC; REC t1,t2;B.structREC ; { int n; char c; }; REC t1,t2;C.typedefstruct REC; { int n=0; char c=′A′; } t1,t2;D.struct{ int n; char c; } REC; REC t1,t2;正确答案:A答案解析:定义结构体类型的一般形式为:struct 结构体名{成员列表};struct 结构体名后不能加″;″号,所以选项B、C)错误,选项D 中定义无名称的结构体类型同时定义结构体变量形式应为struct t1,t2;选项A为用户自定义类型,其为正确的定义形式。
计算机二级考试c语言试题及答案
计算机二级考试c语言试题及答案计算机二级考试C语言试题及答案一、选择题1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,哪个运算符用于计算两个整数的最小公倍数?A. %B. /C. *D. &答案:A3. 下列哪个选项是正确的C语言数组声明?A. int array[10];B. int [10] array;C. Both A and BD. None of the above答案:C4. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strcat()C. strncat()D. strncpy()答案:A5. C语言中,以下哪个语句用于结束程序的执行?A. exit();B. return;C. break;D. continue;答案:A二、填空题6. 在C语言中,一个变量声明为`static int count;`,它的生命周期是_________。
答案:整个程序运行期间7. C语言中,`printf`函数用于输出,其对应的输入函数是_________。
答案:scanf8. 在C语言中,`sizeof`运算符用于获取_________。
答案:变量或类型所占内存的大小9. C语言中,`switch`语句中`case`后面跟的是_________。
答案:常量表达式10. C语言中,`for`循环的一般形式是`for(________;________;________)`。
答案:初始化表达式;条件表达式;迭代表达式三、简答题11. 简述C语言中指针和引用的区别。
答案:指针是一个变量,它存储了另一个变量的内存地址。
引用则是一个别名,它不是独立的变量,而是另一个已存在变量的另一个名字。
12. 解释C语言中的递归函数。
答案:递归函数是指在函数内部调用自身的函数。
计算机二级C语言模拟试题及答案
计算机二级C语言模拟试题及答案计算机二级C语言模拟试题及答案3月26-29日将举行全国计算机等级考试,在此之前,店铺为大家整理了二级c语言的笔试试题,希望对大家有所帮助!(1)以下数据结构属于非线性数据结构的是________。
A)队列 B)线性表 C)二叉树 D)栈(2)C知识点:栈和队列的定义;栈和队列的顺序存储结构及其基本运算评析:线性表、栈和队列等数据结构所表达和处理的数据以线性结构为组织形式。
栈是一种特殊的线性表,这种线性表只能在固定的一端进行插入和删除操作,允许插入和删除的一端称为栈顶,另一端称为栈底。
一个新元素只能从栈顶一端进入,删除时,只能删除栈顶的元素,即刚刚插入的元素。
所以栈又称后进先出表(Last In First Out)。
队列可看作是插入在一端进行,删除在另一端进行的线性表,允许插入的一端称为队尾,允许删除的一端称为队头。
在队列中,只能删除队头元素,队列的最后一个元素一定是最新入队的元素。
因此队列又称先进先出表(First In First Out)。
二叉树的数据结构是树型结构,结构中数据元素之间存在着一对多的关系,因此它是一种非线性数据结构。
2)下面叙述正确的是________。
A)算法的执行效率与数据的存储结构无关B)算法的空间复杂度是指算法程序中指令(或语句)的条数C)算法的有穷性是指算法必须能在执行有限个步骤之后终止D)算法的时间复杂度是指执行算法程序所需要的时间2)C知识点:算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)评析:算法的设计可以避开具体的计算机程序设计语言,但算法的实现必须借助程序设计语言中提供的数据类型及其算法。
数据结构和算法是计算机科学的两个重要支柱。
它们是一个不可分割的整体。
算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度。
算法的有穷性是指一个算法必须在执行有限的步骤以后结束。
算法的时间复杂度是指执行算法所需要的计算工作量,即算法执行过程中所需要的基本运算次数。
国家计算机二级c考试试题及答案
国家计算机二级c考试试题及答案一、选择题(每题2分,共40分)1. 下列关于C语言中变量定义的描述,错误的是:A. 变量必须先定义后使用B. 变量的类型必须与赋值的值类型一致C. 变量的作用域可以是局部的或全局的D. 变量的存储类别可以是自动的或静态的答案:B2. 在C语言中,用于文件操作的函数是:A. printfB. scanfC. fopenD. fclose答案:C3. 下列关于C语言中数组的描述,正确的是:A. 数组必须在函数内定义B. 数组的元素类型必须相同C. 数组的大小在定义后不能改变D. 数组可以作为函数的参数答案:B4. C语言中,用于定义结构体的关键字是:A. intB. structC. floatD. char答案:B5. 在C语言中,下列哪个运算符用于取地址?A. *B. &C. %D. #答案:B6. 下列关于C语言中指针的描述,错误的是:A. 指针可以指向任何类型的变量B. 指针变量本身也占用内存空间C. 指针可以被赋值为NULLD. 指针不能作为函数的参数答案:D7. 在C语言中,下列哪个函数用于字符串连接?A. strcatB. strcpyC. strcmpD. strlen答案:A8. C语言中,用于将字符串转换为浮点数的函数是:A. atoiB. atofC. itoaD. sprintf答案:B9. 下列关于C语言中函数的描述,正确的是:A. 函数必须有返回值B. 函数可以有多个返回值C. 函数的返回值类型必须与定义时的类型一致D. 函数可以嵌套定义答案:C10. 在C语言中,下列哪个关键字用于定义一个无限循环?A. whileB. forC. doD. goto答案:B二、填空题(每题2分,共20分)1. 在C语言中,表示逻辑“与”的运算符是 ________ 。
答案:&&2. C语言中,用于定义一个空指针的值是 ________ 。
计算机二级题库及答案c语言考试
计算机二级题库及答案c语言考试一、选择题1. 在C语言中,以下哪个选项是正确的整型常量表示?A. 0x1AB. 0.123C. 1.2E3D. 0123答案:A2. 若有以下变量定义:```cint a = 10;float b = 12.5;```则以下哪个表达式的值是正确的?A. a + bB. a * bC. a / bD. a % b答案:A3. 下列哪个选项不是C语言中的关键字?A. intB. floatC. autoD. void答案:B4. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!"'D. 'Hello, World!"答案:A5. 若有以下函数定义:```cint max(int x, int y) {return x > y ? x : y;}```则调用该函数时,以下哪个选项是正确的?A. max(5, 3)B. max("5", "3")C. max(5.0, 3.0)D. max(5, '3')答案:A二、填空题1. 在C语言中,声明一个字符数组时,数组的大小必须______。
答案:指定2. 若定义一个指针变量p指向一个整型变量a,则p的类型应该是______。
答案:int*3. 在C语言中,使用______关键字可以定义一个静态局部变量。
答案:static4. 在C语言中,若要打开一个文件进行写操作,应该使用______函数。
答案:fopen5. 在C语言中,若要将一个字符串复制到另一个字符串中,可以使用______函数。
答案:strcpy三、编程题1. 编写一个C语言程序,计算并输出100以内所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 2; i <= 100; i += 2) {sum += i;}printf("The sum of even numbers within 100 is: %d\n", sum);return 0;}```2. 编写一个C语言函数,实现两个整数的交换。
全国计算机c语言二级试题及答案
全国计算机c语言二级试题及答案全国计算机C语言二级试题及答案一、单选题(每题2分,共20分)1. 在C语言中,以下哪个选项是正确的整型常量表示方法?A. 0x1AB. 0.123C. 1.23e10D. 1.23E+10答案:A2. 下列关于C语言中数组的描述,错误的是?A. 数组可以存储相同类型的元素B. 数组的元素必须在编译时确定C. 数组的元素可以是任意数据类型D. 数组的大小在运行时可以改变答案:D3. 在C语言中,以下哪个关键字用于定义函数?A. classB. structC. functionD. void答案:D4. C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B5. 下列哪个选项不是C语言中的控制结构?A. 循环B. 选择C. 跳转D. 继承答案:D6. 在C语言中,以下哪个选项是合法的变量名?A. 2variableB. variable2C. _variableD. variable$答案:C7. C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A8. 在C语言中,以下哪个选项是正确的结构体定义?A. struct {int a;float b;};B. struct {int a;float b;} myStruct;C. struct {int a;float b;} myStruct;D. struct myStruct {int a;float b;};答案:D9. C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. fcloseC. fwriteD. All of the above答案:D10. 在C语言中,以下哪个选项是正确的指针类型声明?A. int *p;B. *int p;C. int *p;D. int p*;答案:A二、填空题(每题2分,共20分)1. 在C语言中,表示逻辑“与”的运算符是________。
计算机二级《C语言》模拟试题及答案
计算机二级《C语言》模拟试题及答案第一部分:选择题1. 下列哪个不是C语言的关键字?A. switchB. intC. varD. return答案:C2. C语言中的字符常量用单引号括起来,字符串常量用双引号括起来。
A. 对B. 错答案:A3. 运算符“++”表示自加一,运算符“--”表示自减一。
A. 对B. 错答案:A4. 下面哪种变量定义方式是合法的?A. int 6_and_7 = 67;B. int ans1 = 1.5;C. float num1 = 3.14;D. char = 'c';答案:C5. 下面关于if语句的描述正确的是?A. if语句必须有else分支。
B. if语句判断条件可以是字符型变量。
C. if语句可以嵌套使用。
D. if语句不能使用逻辑运算符。
答案:C6. 下面哪种循环结构可以一次都不执行循环体?A. for循环B. while循环C. do-while循环D. 都不可以答案:B7. 下面哪个函数是用来从键盘获取一个字符并输出的?A. printf()B. scanf()C. gets()D. putchar()答案:D8. 下面哪个函数是用来比较两个字符串是否相等的?A. strcp()B. strcmp()C. strstr()D. sprintf()答案:B9. C语言中的数组下标是从0开始的。
A. 对B. 错答案:A10. 下面哪个运算符有最高的优先级?A. ++B. +C. *D. =答案:A第二部分:填空题1. 下列标识符是合法的。
(多选)() today_is_Friday()七夕节快乐() month-1() NAME() 3+5num答案:A和D2. int num = ____; 语句将会把变量num的值赋为10。
答案:103. 在for循环中,______ 语句用于控制循环条件。
答案:判断4. int num[5] = {1,2,3,4,5}; 语句定义了一个数组,该数组的元素个数为______。
全国计算机等级考试二级C语言程序设计真题精选6(含答案)
全国计算机等级考试二级C语言程序设计真题精选6一、单项选择题1.有以下程序:#includ<stdio.h>#defin4voifun(ina[][N],inb[])ini; for(i=0;i<N;i++)b[i]=a[i][i];}main()inx[][N]={{1,2,3},{4},{5,6,7,8},{9,10}},y[N],i; fun(x,y); for(i=0;i<N;i++)printf("%d,",y[i]); printf("");}程序运行的结果是()。
A.1,2,3,4,B.1,0,7,0, √C.1,4,5,9D.3,4,8,0解析:数组x有4列。
fun函数中for循环的作用是将二维数组前4行的对角线元素赋给b[0],b[1],b[2],b[3]。
在主函数中,二维数组初始化为{1,2,3},{4},{5,6,7,8},{9,10},所以可以看出对角线元素为1,0,7,0,。
2.有以下程序:#includ<stdio.h>main()chaa=4; printf("%",a=a<<1);}程序运行的结果是()。
A.40B.16C.8 √D.4解析:左移一位相当于原数乘以2,右移一位相当于除以2。
a<<1结果为4*2=8,没有超过char类型的范围。
3.一个栈的初始状态为空。
现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是()。
A.12345ABCDEB.EDCBA54321 √C.ABCDE12345D.54321EDCBA解析:栈是按照“先进后出”的原则组织数据的,入栈的顺序为12345ABCDE,则出栈的顺序应为其逆序,即EDCBA54321。
4.有以下程序:#includ<stdio.h>strucstinx,y;data[2]={1,10,2,20};main ()strucs*p=data; printf("%d,",p->y);printf("%",(++p)->x);}程序运行的结果是()。
最新全国计算机等级二级c语言模拟试题及答案(6)
一.单项选择题1.各种基本数据类型的存贮空间正确的长度排列为__________。
A.Char<LONG<INT<FLOAT<DOUBLE&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; B.Double<FLOAT<LONG<INTC.Char<INT<LONG<FLOAT<DOUBLE&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; D.Float<INT<LONG<CHAR< P>2.下面的变量说明中_____________是正确的。
A.Char:a, b, c;B.Char a; b; c;C.Char a, b, c;D.Char a, b, c3.main( ){ int n;( n=6*4,n+6),n*2;printf(“n=%d\n”,n);} 此程序的输出结果是______________.A.30B. 24C. 60D. 484.若有如下定义,则__________和_________是对数组元素的正确的引用。
.int a[10] , *p ;p=a ;A. *&a[10]B. a[11]C. *(p+2)D. *p5.设整型变量n的值为2,执行语句“n+=n-=n*n;”后,n的值是__________A. 0B. 4C. - 4D. 26.表达式y=(13>12?15:6>7?8:9)的值为____________ 。
A 9B 8C 15D. 17.若x=5,y=3 则y*=x+5; y的值为_______________.A. 10C. 15D. 308.C语言的输入与输出操作是由____________完成的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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’);…}。