2017年计算机二级C语言的结构体和共用体考试考点
2017全国计算机等级考试二级C语言知识点超全整(打印版).docx

全国计算机等级考试目录第-部分公共基础知识第1章算法与数据结构 (1)考点1算法 (I)考点2数据结构 (1)考点3线性表及英顺序存储结构 (1)考点4栈和队列 (1)考点5线性链表 (2)考点6树与二叉树 (2)考点7查找技术 (3)考点8排序技术 (3)第2章程序设计基础 (4)考点I程序设计方法与风格 (4)考点2结构化程序设计 (5)考点3面向对象的程序设计 (5)第3章软件工程基础 (5)考点1软件工程基本概念 (5)考点2软件分析方法 (6)考点3结构化设计方法 (7)考点4软件测试 (8)考点5程用的调试 (9)笫4帝数据库设计基础 (9)考点1数据库系统的基本概念 (9)考点2数据带系统的基木概念 (10)考点3关系代数 (12)考点4数据库设计与管理 (12)第二部分二级C语言笫1章程序设汁基本概念 (14)考点1程序设计 (14)考点2 C程序的结构和格式 (14)考点3常鱼和变蛍 (14)考点4算术表达式 (15)考点5赋值表达式 (16)考点6自加.口减和逗号运算 (16)第2章顺疗结构 (17)考点1字符型常屋与变虽 (17)考点 2 putchar 与gclchar 函数 (17)考点3 printf函数 (17)考点4 scanf函数 (18)考点5位运算的含义和应用 (18)第3章选择结构 (19)考点1关系运算符和关系表达式 (19)考点2逻轉运算符和逻辑表达式 (19)考点3 if语句及其构成的选择结构 (19)考点4 switch语句与break语句 (20)第4章循环结构 (20)考点1 while循环结构 (20)考点2 do-while循环结构 (21)考点3 for循环结构 (21)考点4嵌套循环语句 (21)第5章函数 (21)考点I库函数 (21)考点2函数的调用 (22)考点3参数传递 (22)考点4函数的递归调用 (23)考点5局部、全局变量和存储分类 (23)第6章地址与指针 (23)考点1变量的地址和指针 (23)考点2抬针变量的操作 (24)考点3函数之间地址的传递 (24)第7章数组 (24)考点1 一维数组的定义及元素的引用・・24考点2函数对-维数组及元素的引用・・25考点3二维数组的定义 (25)考点4二维数组和指针 (25)考点5二维数组名和指针数组作为实参・・・26 第8章字符串 (26)考点|用-•维字符数组存放字符出• (26)考点2使指针指向字符串 (26)考点3字符串的输入和输出 (26)考点4字符串数组 (27)考点5用于字符串处理的函数 (27)第9章编译预处理和动态存储分配 (27)考点I編译预处理 (27)考点2宏替换 (27)考点3文件包含处理 (28)考点4动态存储分配 (28)第10章结构体.共用体和用戸定义类型28考点1结构体 (28)考点2共用体 (29)考点3用户定义类型 (29)第11章文件 (29)考点1文件指针 (29)考点2文件的读写 (30)第一部分公共基础知识第1章算法与数据结构考点1算法1. 什么是算法算法是指对解题方案的准确而完整的描述。
计算机二级考试C语言最重要的知识点

计算机二级考试C语言最重要的知识点2017年计算机二级考试C语言最重要的知识点C语言是计算机二级考试的重要科目。
下面是2017年计算机二级考试C语言最重要的知识点。
欢迎阅读。
2017年计算机二级考试C语言最重要的知识点总体上必须清楚的:1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。
2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。
3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址.4)bit是位是指为0 或者1。
byte是指字节, 一个字节 = 八个位.概念常考到的:1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。
C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。
2、define PI 3.1415926; 这个写法是错误的,一定不能出现分号。
3、每个C语言程序中main函数是有且只有一个。
4、在函数中不可以再定义函数。
5、算法:可以没有输入,但是一定要有输出。
6、break可用于循环结构和switch语句。
7、逗号运算符的级别最低,赋值的级别倒数第二。
第一章C语言的基础知识第一节、对C语言的基础认识1、C语言编写的程序称为源程序,又称为编译单位。
2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。
3、一个C语言程序有且只有一个main函数,是程序运行的起点。
第二节、熟悉vc++1、VC是软件,用来运行写的C语言程序。
2、每个C语言程序写完后,都是先编译,后链接,最后运行。
(.c---à.obj---à.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。
(常考!)第三节、标识符1、标识符(必考内容):合法的要求是由字母,数字,下划线组成。
有其它元素就错了。
并且第一个必须为字母或则是下划线。
第一个为数字就错了2、标识符分为关键字、预定义标识符、用户标识符。
计算机二级C语言结构体要点

结构体与共用体要点一、概述结构体(structure)是一种数据类型,它把互相联系的数据组合成一个整体。
把不同类型的数据组合成一个有机的整体,可以用结构体解决。
结构体中的每一项数据,称为结构体“成员”(member)或“分量”。
声明结构体类型的一般形式:struct 结构体名{成员表列};声明各成员的形式:类型名成员名;例如:学生数据struct student{int num;char name[20];char sex;int age;float score;char addr[30];}; 注意不要忽略最后的分号student结构体类型占59个字节。
二、定义结构体类型变量的方法1.先声明结构体类型再定义变量名struct student student1, student2;要求指定为某一特定的结构体类型2.在声明类型的同时定义变量struct 结构体名{成员表列}变量名表列;例如:struct student{int num;char name[20];char sex;int age;float score;char addr[30];} student1, student2;3.直接定义结构体类型变量struct{成员表列}变量名表列;几点说明:(1)类型与变量是不同的概念;(2)结构体中的成员可单独使用,其作用与地位相当于普通变量;(3)成员也可以是一个结构体变量;(4)成员名与普通变量名相同,不代表同一对象。
三、结构体变量的引用(1)不能将结构体变量整体进行输入和输出,只能对各个成员分别进行输入和输出。
printf("%d,%s,%c,%d,%f,%s\n",student1);错误(2)引用成员的方式:结构体变量名.成员名student1.num=10010;当成员是另一个结构体变量时,应一级一级地引用成员。
仅在以下两种情况下,可以把结构体变量作为一个整体来访问。
第十章结构体与共用体

试题汇编之:结构体与共用体一.选择题1.共用体定义为“union data{char ch;int x;}a;”下列语句正确的是。
A:a.ch=‟x‟;a=10; B:a a=‟x‟,10;C:a.x=10;a.ch=‟x‟; D:a=‟x‟;2.共用体定义为“union data{char ch;int x;}a;”下列语句不正确的是。
A:a={…x‟,10}; B:a.x=10;a.x++;C:a.ch=‟x‟;a.ch++; D:a.x=10;a.ch=‟x‟;3.对于:struct node{double x;char c;}*p;下列哪个赋值是错的。
A:p->x=2B:p.x=2.0 C.p->c=2 D.(*p).c=‟a‟4.对于以下结构定义:struct{int len;char *str;}*p;(*p)->str++中的++加在。
A:指针str上B:指针p上. C.str所指的内容上 D:表达式语法有错5.对如下定义:struct{char a1;int a2;}xx; union{char a1;int a2;int a3;}yy;如果sizeof(xx)的值为3,则sizeof(yy)的值应为:A:2 B:4 C:5 D:定义有错6.以下结构体变量定义语句中错误的是。
A.struct staffer{ long int code; float salary;} one;B.struct staffer{ long int code; float salary;} staffer one;C.typedef struct { long int code ; float salary;} STAFFER;D.struct { long int code; float salary; }one;-7.形如上题中定义的结构体变量,下列对此变量的输入形式中正确的是。
C语言 选择题库第10章 结构体与共用体

第10章结构体与共用体1.以下叙述中错误的是()。
A) 可以通过typedef增加新的类型B) 可以用typedef将已存在的类型用一个新的名字来代表C) 用typedef定义新的类型名后,原有类型名仍有效D) 用typedef可以为各种类型起别名,但不能为变量起别名参考答案:A【解析】关键字typedef的作用只是将C语言中的已有的数据类型作了置换,并不是增加新的类型,所以A)错误。
2.以下关于typedef的叙述错误的是A) 用typedef可以增加新类型B) typedef只是将已存在的类型用一个新的名字来代表C) 用typedef可以为各种类型说明一个新名,但不能用来为变量说明一个新名D) 用typedef为类型说明一个新名,通常可以增加程序的可读性参考答案:A【解析】typedef并不是增加了新类型,而是用一个新名字替代已存在的类型,不能为变量说明一个新名,使用typedef可以增强移植性。
所以A选项错误。
3.若有以下语句typedef struct S{ int g; char h; } T;以下叙述中正确的是A) 可用S定义结构体变量B) 可用T定义结构体变量C) S是struct 类型的变量D) T是struct S类型的变量参考答案:B【解析】本题考查typedef重新声明一种结构体类型,那么T为结构体类型,而不是结构体变量,所以B选项正确。
4.设有以下语句typedef struct TT{ char c; int a[4]; } CIN;则下面叙述中正确的是A) CIN是struct TT类型的变量B) TT是struct类型的变量C) 可以用TT定义结构体变量D) 可以用CIN定义结构体变量参考答案:D【解析】本题考查typedef重新声明一种结构体类型,其中CIN为结构体类型名,而不是结构体变量,所以D 选项正确。
5.以下叙述中错误的是A) 可以用typedef将已存在的类型用一个新的名字来代表B) 可以通过typedef增加新的类型C) 用typedef定义新的类型名后,原有类型名仍有效D) 用typedef可以为各种类型起别名,但不能为变量起别名参考答案:B【解析】本题考查typedef的用法,typedef并不是增加一种新的类型,而是对已存在的类型用一个新的名字来代表,所以B选项错误。
计算机二级C语言考试内容及重点

计算机二级C语言考试内容及重点计算机二级C语言试采用全国统一命题,统一考试的形式,各科目均为上机操作考试。
下面是2017年计算机二级C语言考试内容及重点。
欢迎阅读。
考试内容一、C语言程序的结构1. 程序的构成,main函数和其他函数。
2. 头文件,数据说明,函数的开始和结束标志以及程序中的注释。
3. 源程序的书写格式。
4. C语言的风格。
二、数据类型及其运算1. C的数据类型(基本类型,构造类型,指针类型,无值类型)及其定义方法。
2. C运算符的种类、运算优先级和结合性。
3. 不同类型数据间的转换与运算。
4. C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。
三、基本语句1. 表达式语句,空语句,复合语句。
2. 输入输出函数的调用,正确输入数据并正确设计输出格式。
四、选择结构程序设计1. 用if 语句实现选择结构。
2. 用switch语句实现多分支选择结构。
3. 选择结构的嵌套。
五、循环结构程序设计1. for循环结构。
2. while和do-while循环结构。
3. continue语句和break语句。
4. 循环的嵌套。
六、数组的定义和引用1. 一维数组和二维数组的定义、初始化和数组元素的引用。
2. 字符串与字符数组。
七、函数1. 库函数的正确调用。
2. 函数的定义方法。
3. 函数的类型和返回值。
4. 形式参数与实在参数,参数值的传递。
5. 函数的正确调用,嵌套调用,递归调用。
6. 局部变量和全局变量。
7. 变量的存储类别(自动,静态,寄存器,外部),变量的作用域和生存期。
八、编译预处理1. 宏定义和调用(不带参数的宏,带参数的宏)。
2. “文件包含冶处理。
九、指针1. 地址与指针变量的概念,地址运算符与间址运算符。
2. 一维、二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变量的定义。
通过指针引用以上各类型数据。
3. 用指针作函数参数。
计算机二级C语言 结构体与共同体
第九章结构体和共用体【本章要求】1、结构体类型的定义方法和数据的引用,尤其是结构体成员中含有数组的用法2、访问通过结构体类型建立的单链表,并对链表中的结点进行插入、删除操作3、共用体类型的定义和引用,尤其是队成员的覆盖赋值方式。
9.1 结构体9.1.1概念结构体是一种构造数据类型,用于把不同类型的数据组合成一个自定义的数据类型。
9.1.2结构体类型定义结构类型定义的一般形式是:struct <结构类型名>{ <成员类型标识符><空格><成员名表列>;<成员类型标识符><空格><成员名表列>;<成员类型标识符><空格><成员名表列>;} [<变量名列表>];【说明】1、struct是关键字,不能省略2、<结构类型名>为合法标识符,但可省略(即无名结构体)3、<成员名表列>是由一个或多个成员名(又称为成员变量)组成,当成员名不止一个时,用逗号分隔。
4、结构可由多个成员名组成,成员名可以是由<成员类型标识符>确定的相同的或不同的数据类型,可以是基本类型或构造类型。
5、<变量名列表>可为空。
举例说明:struct student {int num;char name[20];char sex;int age;float score;char addr[30];};【说明】namenumsexagescoreaddr2字节2字节20字节1字节4字节30字节……..- 113 -《C 语言程序设计》- 114 - 1、结构体类型定义的作用域取决于其定义位置2、结构体类型定义仅仅描述结构的组织形式,并不分配内存。
9.2 结构体变量9.2.1结构体变量的定义一、方式一先定义结构体类型,再定义结构体变量。
举例说明如下:1、一般形式:struct student stu1, stu2;2、若有宏定义:#define STUDENT struct student则可为:STUDENT stu1, stu2; 二、方式二定义结构体类型的同时定义结构体变量。
全国计算机等级考试二级C语言程序设计考试大纲和考核情况
全国计算机等级考试二级C语言程序设计考试大纲和考核情况◆基本要求1.熟悉Visual C++ 6.0 集成开发环境。
2.掌握结构化程序设计的方法,具有良好的程序设计风格。
3.掌握程序设计中简单的数据结构和算法并能阅读简单的程序。
4.在Visual C++ 6.0 集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能力◆考试内容和考核情况一、C语言程序的结构(笔试:分值约占2%,上机:改错题中经常出现,抽中几率约为8%。
)1.程序的构成,main函数和其他函数。
2.头文件,数据说明,函数的开始和结束标志以及程序中的注释。
3.源程序的书写格式。
4.C语言的风格。
二、数据类型及其运算(笔试:分值约占10%。
上机:3种题型均有体现,经常结合其他知识点综合考查,抽中几率约为56%。
)1.C的数据类型(基本类型,构造类型,指针类型,无值类型)及其定义方法。
2.C运算符的种类、运算优先级和结合性。
3.不同类型数据间的转换与运算。
4.C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。
三、基本语句(多以上机考试形式考核,3种题型均有体现,经常结合其他知识点综合考查,抽中几率约为35%。
)1.表达式语句,空语句,复合语句。
2.输入输出函数的调用,正确输入数据并正确设计输出格式。
四、选择结构程序设计(笔试:分值约占8%。
上机:3种题型均有体现,经常结合其他知识点综合考查,抽中几率约为37%。
)1.用if语句实现选择结构。
2.用switch 语句实现多分支选择结构。
3.选择结构的嵌套。
五、循环结构程序设计(笔试:分值约占12%。
上机:3种题型均有体现,抽中几率约为37%。
)1.for循环结构。
2.while和do-while循环结构。
3.continue语句和break语句。
4.循环的嵌套。
六、数组的定义和引用(笔试:分值约占12%。
上机:3种题型均有体现,上机考试中的考核频率越来越高,抽中几率约为28%。
2017全国计算机等级考试二级C语言知识点超全整(打印版)
全国计算机等级考试目录第一部分公共基础知识第1 章算法与数据结构 (1)考点1 算法 (1)考点2 数据结构 (1)考点3 线性表及其顺序存储结构 (1)考点4 栈和队列 (1)考点5 线性链表 (2)考点6 树与二叉树 (2)考点7 查找技术 (3)考点8 排序技术 (3)第2 章程序设计基础 (4)考点1 程序设计方法与风格 (4)考点2 结构化程序设计 (5)考点3 面向对象的程序设计 (5)第3 章软件工程基础 (5)考点1 软件工程基本概念 (5)考点2 软件分析方法 (6)考点3 结构化设计方法 (7)考点4 软件测试 (8)考点5 程序的调试 (9)第4 章数据库设计基础 (9)考点1 数据库系统的基本概念 (9)考点2 数据库系统的基本概念 (10)考点3 关系代数 (12)考点4 数据库设计与管理 (12)第二部分二级 C 语言第1 章程序设计基本概念 (14)考点1 程序设计 (14)考点2 C 程序的结构和格式 (14)考点3 常量和变量 (14)考点4 算术表达式 (15)考点5 赋值表达式 (16)考点6 自加、自减和逗号运算 (16)第2 章顺序结构 (17)考点1 字符型常量与变量 (17)考点2 putchar 与getchar 函数 (17)考点3 printf 函数 (17)考点4 scanf 函数 (18)考点5 位运算的含义和应用 (18)第3 章选择结构 (19)考点1 关系运算符和关系表达式 (19)考点2 逻辑运算符和逻辑表达式 (19)考点3 if 语句及其构成的选择结构 (19)考点4 switch 语句与break 语句 (20)第4 章循环结构 (20)考点1 while 循环结构 (20)考点2 do-while 循环结构 (21)考点3 for 循环结构 (21)考点4 嵌套循环语句 (21)第5 章函数 (21)考点1 库函数 (21)考点2 函数的调用 (22)考点3 参数传递 (22)考点4 函数的递归调用 (23)考点5 局部、全局变量和存储分类 (23)第6 章地址与指针 (23)考点1 变量的地址和指针 (23)考点2 指针变量的操作 (24)考点3 函数之间地址的传递 (24)第7 章数组 (24)考点1 一维数组的定义及元素的引用.. 24考点2 函数对一维数组及元素的引用.. 25考点3 二维数组的定义 (25)考点4 二维数组和指针 (25)考点5 二维数组名和指针数组作为实参 (26)第8 章字符串 (26)考点1 用一维字符数组存放字符串 (26)考点2 使指针指向字符串 (26)考点3 字符串的输入和输出 (26)考点4 字符串数组 (27)考点5 用于字符串处理的函数 (27)第9 章编译预处理和动态存储分配 (27)考点1 编译预处理 (27)考点2 宏替换 (27)考点3 文件包含处理 (28)考点4 动态存储分配 (28)第10 章结构体、共用体和用户定义类型28 考点1 结构体 (28)考点2 共用体 (29)考点3 用户定义类型 (29)第11 章文件 (29)考点1 文件指针 (29)考点2 文件的读写 (30)选择题考点秘籍—二级C 语言第一部分公共基础知识第 1 章算法与数据结构考点 1 算法1.什么是算法算法是指对解题方案的准确而完整的描述。
全国计算机等级考试二级C语言公共基础知识点汇总
2017年全国计算机等级考试二级C语言公共基础知识点汇总2017年全国计算机等级考试二级公共基础知识总结汇总1.1 算法算法:是解题方案的准确而完整的描述。
通俗地说,算法就是计算机解题的过程。
算法不等于程序,也不等于计算方法,程序的编制不可能优于算法的设计。
(1)确定性,算法中每一步骤都必须有明确定义,不允许有模棱两可的解释,不允许有多义性;(2)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止;(3)可行性,算法原则上能够精确地执行;(4)拥有足够的情报。
算法效率的度量—算法复杂度:算法时间复杂度和算法空间复杂度。
★★★算法时间复杂度:指执行算法所需要的计算工作量。
即算法执行过程中所需要的基本运算次数。
算法空间复杂度:指执行这个算法所需要的内存空间。
1.2 数据结构的基本概念数据结构:指相互有关联的数据元素的集合。
数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。
线性结构的条件,(一个非空数据结构):(1)有且只有一个根结点; (2)每一个结点最多有一个前件,也最多有一个后件。
非线性结构:不满足线性结构条件的数据结构。
1.3 线性表及其顺序存储结构线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
顺序表的运算:查找、插入、删除。
1.4线性链表数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。
结点由两部分组成:(1) 用于存储数据元素值,称为数据域;(2) 用于存放指针,称为指针域,用于指向前一个或后一个结点。
在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2017年计算机二级C语言的结构体和共
用体考试考点
更多计算机软件水平考试相关信息请访问计算机软件水平考试
网。
【考点1】结构体类型的说明
结构体是若干个类型数据的集合,
结构体类型说明格式:
struct类型名{类型1成员名1;类型2成员名2; ••…};,以上整个部分是一个数据类型,与整型的int是同样地位。
可用typedef把结构体类型替换成一个只有几个字母的简短标识符。
【考点2】结构体变量的定义
结构体变量是用说明的结构体类型所定义的一个变量,与结构体类型不是一回事。
一个结构体变量所占字节数为其所有成员所占字节数之和。
女口struct stu{char name[10];int age;} a,b; 则表明定义了两个结构体变量a,b,每个变量占14个字节。
a,b与int i,j;中的变量i,j 是同样地位。
typedef考的很多(教材150页例6)。
【考点3】结构体成员的引用
引用成员可用以下3种方式:(1)结构体变量名•成员名;(2)
指针变量名-> 成员名:(3) (*指针变量名)•成员名。
点(•)称为成员运算符,箭头(-> )称为结构指向运算符。
【考点4】共用体
共用体的使用格式与结构体相似,共用体定义的关键字为
union,共用体所占字节数是所有成员中字节数的那个。
union TT
{ int a;
char ch[2];} t1 ;
mai n()
{t1.a=0x1234;
prin tf("%x\n",t1.ch[O]);
prin tf("%x\n",t1.ch[1] );}
考点一:sizeof (struct TT) = 2;
考点二:TT t1 ; t1.a=0x1234;
那么ch[0]=0x 34; ch[1]=0x12
结构体和共用体以及链表要掌握最简单的。
typedef考的很多,而且一定要知道如何引用结构体中的各个变量,链表中如何填加和删除节点,以及何如构成一个简单的链表,一定记住链表中的节点是有两个域,一个放数值,一个放指针。
【考点5】链表
链表是由一个个结点构成的,一个结点就是一个结构体变量。
每个
结点可以分为数据域与指针域两个部分,数据域用来存放要存储的数据,指针域用来指向下一个结点。
链表是考试中的难点,在C语言和公共基础部分都会考到,要掌握,链表中如何增加和删除节点(每年都考),以及何如构成一个简单的链表,一定记住链表中的节点是有两个域,一个放数值,一个放指针。