C语言二级综合

合集下载

全国计算机等级考试二级c语言公共基础知识总结汇总

全国计算机等级考试二级c语言公共基础知识总结汇总

全国计算机等级考试二级c语言公共基础知识总结2009-02-17 21:34第一章数据结构与算法1.1 算法算法:是指解题方案的准确而完整的描述。

算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。

算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。

特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。

算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。

指令系统:一个计算机系统能执行的所有指令的集合。

基本运算包括:算术运算、逻辑运算、关系运算、数据传输。

算法的控制结构:顺序结构、选择结构、循环结构。

算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。

算法复杂度:算法时间复杂度和算法空间复杂度。

算法时间复杂度是指执行算法所需要的计算工作量。

算法空间复杂度是指执行这个算法所需要的内存空间。

1.2 数据结构的基本基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。

数据结构是指相互有关联的数据元素的集合。

数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。

数据的存储结构有顺序、链接、索引等。

线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。

非线性结构:不满足线性结构条件的数据结构。

1.3 线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。

在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。

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

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

计算机c语言二级考试试题及答案一、单项选择1 下列数据中,为字符串常量的是()。

DA、'A'B、How do you do.C、$abcD、"house"2 以下所列的C语言常量中,错误的是( )。

BA、0xFFB、1.2e0.5C、2LD、'\72'3 以下程序的输出结果是()。

Dmain(){float x=3.6;int i;i=(int)x;printf("x=%f,i=%d\n",x,i);}A、x=3.600000,i=4B、x=3 i=3.600000C、x=3,i=3D、x=3.600000,i=34 若k是整型,则以下程序段的执行结果是:( ) B k=-3;if(k<=0) printf("####")else printf("&&&&");A、####B、有语法错误,无结果C、&&&&D、####&&&&5 若x=2,y=3则x||y的结果是( )。

CA、3B、0C、1D、26 针对下列程序段回答问题( B ).for(t=1;t<=100;t++){scanf("%d",&x);if(x<0) continue;printf("=",t);}A、x>=0时什么也不输出B、最多允许输出100个非负整数C、printf函数永远也不执行D、当x<0时整个循环结束7 以下程序的执行结果是( )。

Bmain(){ 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,8 选择正确的输入语句( D )。

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

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

计算机二级c语言试题及答案详解一、基础知识部分1. 下列关于C语言的描述中,错误的是:A) C语言是一种高级语言B) C语言是一种编译型语言C) C语言是一种面向对象语言D) C语言是一种结构化语言答案:C) C语言是一种面向对象语言解析:C语言是一种过程式语言,不是面向对象语言。

2. 下列关于C语言标识符的说法中,错误的是:A) 标识符由字母、数字和下划线组成B) 标识符可以以字母或下划线开头C) 标识符区分大小写D) 标识符不能与C语言的关键字相同答案:C) 标识符区分大小写解析:C语言标识符是不区分大小写的。

3. 以下哪项不是C语言关键字?A) ifB) whileC) varD) for答案:C) var解析:C语言中没有关键字var,正确的关键字是int。

4. 下列代码中,哪个选项是合法的C语言注释?A) /* This is a comment */B) // This is a commentC) # This is a commentD) <!-- This is a comment -->答案:A) /* This is a comment */解析:C语言的注释格式是/* ... */。

二、程序设计部分请写一段C语言程序,实现将两个数相加并输出结果的功能。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两数之和为:%d\n", sum);return 0;}```解析:以上代码实现了从用户输入两个整数,然后将其相加并输出结果的功能。

三、综合应用部分下列代码中,输出的结果是多少?```c#include <stdio.h>int main() {int a = 5, b = 2;float result;result = a / b;printf("结果为:%f\n", result);return 0;}```答案:结果为2.000000解析:由于a和b都是整数类型,除法运算得到的结果也是整数类型。

最新全国计算机等级考试二级C语言-题库(全)

最新全国计算机等级考试二级C语言-题库(全)

2016年3月份全国计算机等级考试二级C语言题库(全)一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为A)PAD图B)N-S图C)结构图D)数据流图(2)结构化程序设计主要强调的是A)程序的规模B)程序的效率C)程序设计语言的先进性D)程序易读性(3)为了使模块尽可能独立,要求A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(4)需求分析阶段的任务是确定A)软件开发方法B)软件开发工具C)软件开发费用D)软件系统功能(5)算法的有穷性是指A)算法程序的运行时间是有限的B)算法程序所处理的数据量是有限的C)算法程序的长度是有限的D)算法只能被有限的用户使用(6)对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是A)快速排序B)冒泡排序C)直接插入排序D)堆排序(7)如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是A)e3,e1,e4,e2 B)e2,e4,e3,e1 C)e3,e4,e1,e2 D) 任意顺序(8)将E-R图转换到关系模式时,实体与联系都可以表示成A)属性B)关系C)键D)域(9)有三个关系R、S和T如下:RB C Da 0 k1b 1 n1SB C Df 3 h2a 0 k1n 2 x1TB C Da 0 k1由关系R和S通过运算得到关系T,则所使用的运算为A)并B)自然连接C)笛卡尔积D)交(10)下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一行称为元组,每一个列称为属性D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字(11)以下叙述中正确的是A)用C程序实现的算法必须要有输入和输出操作B)用C程序实现的算法可以没有输出但必须要有输入C)用C程序实现的算法可以没有输入但必须要有输出D)用C程序实现的算法可以既没有输入也没有输出(12)下列可用于C语言用户标识符的一组是A)void, define, WORD B)a3_3,_123,Car C)For, -abc, IF CaseD)2a, DO, sizeof 标识符由数字、字母、下划线组成,开头不能为数字(13)以下选项中可作为C语言合法常量的是A)-80 B)-080 C)-8e1.0 D)-80.0e e后为整数(14)若有语句:char *line[5];,以下叙述中正确的是A) 定义line是一个数组,每个数组元素是一个基类型为char为指针变量B) 定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C) 定义line是一个指针数组,语句中的*号称为间址运算符D) 定义line是一个指向字符型函数的指针(15)以下定义语句中正确的是A)int a=b=0; B)char A=65+1,b=′b′; C)float a=1,*b=&a,*c=&b;D)double a=00;b=1.1;(16)有以下程序段char ch; int k;ch=′a′;k=12;printf("%c,%d,",ch,ch,k); printf("k=%d \n",k);已知字符a的ASCII码值为97,则执行上述程序段后输出结果是A)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,12k=12D)a,97,k=12(17)有以下程序main(){ int i,s=1;for (i=1;i<50;i++)if(!(i%5)&&!(i%3)) s+=i;printf("%d\n",s);}A)409 B)277 C)1 D)91 (18)当变量c的值不为2、4、6时,值也为"真"的表达式是A)(c==2)||(c==4)||(c==6)B)(c>=2&& c<=6)||(c!=3)||(c!=5)C)(c>=2&&c<=6)&&!(c%2)D)(c>=2&& c<=6)&&(c%2!=1)(19)若变量已正确定义,有以下程序段int a=3,b=5,c=7;if(a>b) a=b; c=a;if(c!=a) c=b;printf("%d,%d,%d\n",a,b,c);其输出结果是A)程序段有语法错B)3,5,3 C)3,5,5 D)3,5,7(20)有以下程序#include <stdio.h>main(){ int x=1,y=0,a=0,b=0;switch(x){ case 1:switch(y){ case 0:a++; break;case 1:b++; break;}case 2:a++; b++; break;case 3:a++; b++;}printf("a=%d,b=%d\n",a,b);}A)a=1,b=0 B)a=2,b=2 C)a=1,b=1 D)a=2,b=1(21)下列程序的输出结果是#include "stdio.h"main(){ int i,a=0,b=0;for(i=1;i<10;i++){ if(i%2==0){a++;continue;}b++;}printf("a=%d,b=%d",a,b); }A)a=4,b=4 B)a=4,b=5 C)a=5,b=4 D)a=5,b=5(22)已知#int t=0;while (t=1){...}则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对(23)下面程序的输出结果是main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf("%d\n",*(p+2));}A)3 B)4 C)1 D)2(24)以下错误的定义语句是A)int x[][3]={{0},{1},{1,2,3}}; B)int x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C)int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}}; D)int x[][3]={1,2,3,4}; (25)有以下程序void ss(char *s,char t){ while(*s){ if(*s==t)*s=t-′a′+′A′;s++; } }main(){ char str1[100]="abcddfefdbd",c=′d′;ss(str1,c); printf("%s\n",str1);}程序运行后的输出结果是A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbA D)Abcddfefdbd(26)有如下程序main(){ char ch[2][5]={"6937","8254"},*p[2];int i,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>′\0′;j+=2)s=10*s+p[i][j]-′0′;printf("%d\n",s);}该程序的输出结果是A)69825 B)63825 C)6385 D)693825(27)有定义语句:char s[10];,若要从终端给s输入5个字符,错误的输入语句是A)gets(&s[0]); B)scanf("%s",s+1); C)gets(s); D)scanf("%s",s[1]); (28)以下叙述中错误的是A)在程序中凡是以"#"开始的语句行都是预处理命令行B)预处理命令行的最后不能以分号表示结束C)#define MAX 是合法的宏定义命令行D)C程序对预处理命令行的处理是在程序执行的过程中进行的(29)设有以下说明语句typedef struct{ int n;char ch[8];} PER;则下面叙述中正确的是A)PER 是结构体变量名B)PER是结构体类型名C)typedef struct 是结构体类型D)struct 是结构体类型名(30)以下叙述中错误的是A)gets函数用于从终端读入字符串B)getchar函数用于从磁盘文件读入字符C)fputs函数用于把字符串输出到文件D)fwrite函数用于以二进制形式输出数据到文件(31)以下能正确定义一维数组的选项是A)int a[5]={0,1,2,3,4,5}; B)char a[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′}; C)char a={′A′,′B′,′C′}; D)int a[5]="0123";(32)有以下程序#include<string.h>main(){ char p[]={′a′, ′b′, ′c′},q[10]={ ′a′, ′b′, ′c′};printf("%d%d\n",strlen(p),strlen(q));}以下叙述中正确的是A) 在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3B) 由于p数组中没有字符串结束符,长度不能确定,但q数组中字符串长度为3C) 由于q数组中没有字符串结束符,长度不能确定,但p数组中字符串长度为3D) 由于p和q数组中都没有字符串结束符,故长度都不能确定(33)有以下程序#include <stdio.h>#include <string.h>void fun(char *s[],int n){ char *t; int i,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strlen(s[i])>strlen(s[j])) {t=s[i];s[i]:s[j];s[j]=t;}}main(){ char *ss[]={"bcc","bbcc","xy","aaaacc","aabcc"};fun(ss,5); printf("%s,%s\n",ss[0],ss[4]);}程序的运行结果是A)xy,aaaacc B)aaaacc,xy C)bcc,aabcc D)aabcc,bcc(34)有以下程序#include <stdio.h>int f(int x){ int y;if(x==0||x==1) return(3);y=x*x-f(x-2);return y;}main(){ int z;z=f(3); printf("%d\n",z);}程序的运行结果是A)0 B)9 C)6 D)8(35)下面程序段的运行结果是char str[]="ABC",*p=str;printf("%d\n",*(p+3));A)67 B)0 C)字符′C′的地址D)字符′C′(36)若有以下定义:struct link{ int data;struct link *next;} a,b,c,*p,*q;且变量a和b之间已有如下图所示的链表结构:指针p指向变量a,q指向变量c。

全国计算机二级C语言最重要的知识点总结

全国计算机二级C语言最重要的知识点总结

全国计算机二级C语言最重要的知识点总结计算机二级C语言考试是对学生掌握C语言基础知识以及应用能力的综合考试。

以下是全国计算机二级C语言最重要的知识点总结。

一、基础知识点(约占30%)1.基本语法:C语言的基本结构、关键字、标识符、注释等。

2.变量和数据类型:整型、浮点型、字符型、指针等。

3.运算符和表达式:算术运算符、关系运算符、逻辑运算符等。

4.控制语句:条件语句(if-else语句、switch语句)、循环语句(for循环、while循环)、跳转语句(break语句、continue语句)。

5.数组和字符串:一维数组、二维数组、字符数组、字符串处理等。

二、函数(约占20%)1.函数的定义与调用:函数的声明、定义、调用。

2.函数的参数传递:值传递、地址传递。

3.函数的返回值:返回值类型、返回值的使用。

4.递归函数:递归函数的原理与应用。

三、指针(约占15%)1.指针的定义与初始化:指针变量的定义、指针的初始化。

2.指针的运算:指针的加减运算、指针的比较运算。

3.指针和数组:指针与一维、二维数组的关系。

4.指针和函数:指针作为函数的参数、指针作为函数的返回值。

四、文件操作(约占15%)1.文件的打开和关闭:文件的打开模式、文件指针的移动。

2.文件的读写操作:字符的读写、字符串的读写、二进制文件的读写。

3.文件的管理:文件的重命名、删除文件、创建文件夹等。

五、结构体(约占10%)1.结构体的定义:结构体成员的类型和名称。

2.结构体的初始化:结构体变量的初始化、结构体指针的初始化。

3.结构体的访问:点运算符、箭头运算符的使用。

六、动态内存管理(约占10%)1.内存的分配和释放:malloc函数、calloc函数、realloc函数。

2.内存的操作:内存的读写、内存的拷贝。

3.内存泄漏和野指针:内存的释放、野指针的产生和解决方法。

七、综合应用(约占5%)1.数组和字符串处理:冒泡排序、选择排序、字符串操作(拷贝、连接、比较)等。

全国计算机等级考试二级C语言【附详解】

全国计算机等级考试二级C语言【附详解】

下列叙述中正确的是 A、栈是一种先进先出的线性表 B、队列是一种后进先出的线性表 C、栈和队列都是非线性结构 D、以上三种说法都不对
栈是一种后进先出的线性表 队列是一种先进先出的线性表,二者均是线性结构, 答案为选项D。
一棵二叉树共有25个节点,其中5个是子节点, 那么度为1的节点数为 A、4 B、6 C、10 D、16
指针的概念和应用 数组名本身就是地址,所以不需要用&符号。C选项不能对所 有元素赋值而是反复再给一个数值赋值且是死循环。D
有以下程序 #include <sthio.h> Main() {int a,b,k,m,*p1,*p2; ; a=/*p1-m; b=*p1+*p2+6; printf(“%d ”,a); printf(“%d\n”,b);
内模式也称存储模式,它是数据物理结构和存储方 式的描述,是数据在数据库内部的表示方式 对应于物理级,它是数据库中全体数据的内部表示 或底层描述,是数据库最低一级的逻辑描述。选项 A正确。
在满足实体完整性约束的条件下 A. 一个关系中可以没有候选关键词 B. 一个关系中只能有一个候选关键词 C. 一个关系中必须有多个候选关键词 D. 一个关系中应该有一个或者多个候选关键词
在一个关系中,候选关键字可以有多个且在任何关系中至少有一个关键字。 所以在满足数据完整性约束的条件下,一个关系应该有一个或多个候选关键 字,选项D正确。
有三个关系R、S和T如下:
R和S的差是由属于R但不属于S的元组组成的集合 根据本题关系R和关系S运算前后的变化,可以看出此处进行 的是关系运算的差运算
简单程序设计的步骤: 首先要确定算法和数据结构 然后编码、调试 最后整理相关文档。
关于C语言中数的表示,以下叙述正确的是 A、只有整型数在允许范围内能精确无误的表示,实型数会 有误差 B、只要在在允许范围内整型和实型都能精确表示 C、只有实型数在允许范围内能精确无误的表示,整型数会 有误差 D、只有八进制表示的数在不会有误差

c语言二级考试题型

c语言二级考试题型摘要:一、C语言二级考试概述1.C语言二级考试简介2.考试题型及分值分布二、选择题1.题型特点2.备考策略三、填空题1.题型特点2.备考策略四、编程题1.题型特点2.备考策略五、综合题1.题型特点2.备考策略六、C语言二级考试备考建议1.学习资料推荐2.学习方法及技巧3.模拟考试及总结正文:C语言二级考试是针对计算机编程初学者的一个水平测试,旨在检验考生对C语言基本概念、语法规则、编程技巧等方面的掌握程度。

本文将对C语言二级考试的题型进行详细解析,并提供一些备考建议。

一、C语言二级考试概述C语言二级考试主要测试考生对C语言基本知识的掌握程度,包括选择题、填空题、编程题和综合题等。

考试满分100分,其中选择题占20分,填空题占30分,编程题占30分,综合题占20分。

二、选择题选择题是C语言二级考试的第一部分,共20题,每题1分。

题型包括单选题和多选题。

选择题主要测试考生对C语言基本概念、语法规则、数据结构等方面的掌握。

备考选择题时,要重点掌握C语言基础知识,加强对概念的理解,熟悉常见的题目陷阱。

三、填空题填空题共30题,每题3分,共90分。

题型包括单空题和多空题。

填空题主要测试考生对C语言语法规则、运算符、函数等方面的掌握。

备考填空题时,要熟练掌握C语言的语法细节,加强对关键字、运算符、数据类型等概念的记忆。

四、编程题编程题共3题,每题10分,共30分。

题型包括改错题、编写程序题和阅读程序题。

编程题主要测试考生的C语言编程能力,包括程序设计思路、代码编写和调试等方面。

备考编程题时,要多加练习,提高编程速度和准确度,掌握常见的编程技巧和方法。

五、综合题综合题共2题,每题10分,共20分。

题型包括设计题和分析题。

综合题主要测试考生对C语言的综合运用能力,包括算法设计、数据结构、程序分析等方面。

备考综合题时,要加强对数据结构、算法和程序设计思想的学习,提高综合分析和解决问题的能力。

六、C语言二级考试备考建议1.学习资料推荐:C语言教材、在线课程、题库和论坛等。

计算机二级知识点总结c语言

计算机二级知识点总结c语言计算机二级知识点总结C语言C语言是一种通用的编程语言,广泛应用于计算机科学和软件开发领域。

对于计算机二级考试来说,掌握C语言的基本知识点是非常重要的。

本文将对C语言的一些重要知识点进行总结,帮助考生更好地准备考试。

一、基本语法1. 字符集:C语言使用ASCII字符集进行编程。

2. 注释:单行注释以“//”开头,多行注释以“/*”开头,以“*/”结尾。

3. 标识符:由字母、数字和下划线组成,必须以字母或下划线开头。

4. 关键字:C语言有一些预定义的关键字,如int、char、if 等。

二、数据类型1. 基本数据类型:包括整型(int)、字符型(char)、浮点型(float)和双精度浮点型(double)。

2. 枚举类型:使用enum关键字定义的一组命名常量。

3. 派生数据类型:由基本数据类型和其他数据类型组合而成的数据类型,如数组、结构体和联合体。

三、运算符和表达式1. 算术运算符:包括加法(+)、减法(-)、乘法(*)、除法(/)和取模(%)。

2. 关系运算符:用于比较两个表达式的结果,如等于(==)、不等于(!=)、大于(>)等。

3. 逻辑运算符:用于连接两个或多个表达式,如与(&&)、或(||)和非(!)。

4. 条件运算符:用于根据条件选择不同的值,形式为“条件 ? 值1 : 值2”。

四、控制语句1. 选择结构:使用if语句进行条件判断,可以使用if-else、if-else if-else等嵌套形式。

2. 循环结构:使用for、while和do-while语句进行循环操作。

3. 跳转语句:使用break和continue语句控制程序的跳转。

五、数组和指针1. 数组:一组相同类型的数据的有序集合,在C语言中以一维或多维数组的形式存在。

2. 指针:用来存储变量的地址,可以通过指针来访问和修改变量的值。

六、函数1. 函数定义:包括返回类型、函数名、参数列表和函数体。

(完整版)二级C语言知识点大汇总,推荐文档

计算机二级考试C语言知识点总结(完全针对考试大纲)总体上必须清楚的:1)程序结构是三种: 顺序结构, 循环结构(三个循环结构), 选择结构(if 和switch)2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址.4)bit是位是指为0 或者1。

byte 是指字节, 一个字节= 八个位. 000111105)一定要记住二进制与十进制互化。

概念常考到的:1、编译预处理不是C语言的一部分,不再运行时间。

C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。

2、每个C语言程序中main函数是有且只有一个。

3、在函数中不可以再定义函数。

4、算法的是一定要有输出的,他可以没有输入。

5、break可用于循环结构和switch语句。

6、逗号运算符的级别最低。

第一章1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。

有其它元素就错了。

并且第一个必须为字母或则是下划线。

第一个为数字就错了。

关键字不可以作为用户标识符号。

main define scanf printf if都不是关键字。

迷惑你的地方If是可以做为用户标识符。

因为If中的第一个字母大写了,所以不是关键字。

2)实型数据的合法形式:2.333e0.1 就是合法的,且数据是2.333×10-1。

考试口诀:e前e后必有数,e后必为整数。

.3)字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。

'0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。

4)整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节: 考试时候一般会说,在16位编译系统,或者是32位系统。

全国计算机等级考试二级c语言3篇

全国计算机等级考试二级c语言第一篇:C语言基础知识C语言是一门广泛应用于系统软件、应用软件和嵌入式系统开发的高级编程语言。

在进行二级计算机等级考试中,掌握C语言的基础知识是非常重要的,因此本篇将为大家介绍一些关于C语言基础知识的内容。

C语言的特点:1. 高效性:C语言可直接访问机器的底层,这使得C语言具有高效性,可以编写高效的代码。

2. 可移植性:C语言的程序可以在不同的平台上运行,只需要编译时进行一些简单的修改。

3. 灵活性:C语言可以用来编写系统软件、应用软件和嵌入式系统开发等领域的程序。

基本语法:在C语言中,大多数语句都以分号结尾。

C语言中的注释分为单行注释和多行注释。

单行注释以“//”开头,多行注释以“/*”开头,“*/”结尾。

变量:在C语言中,变量是为了存储数据而创建的,使用变量之前需要先声明,写法为数据类型变量名; 如 int a;基本数据类型:C语言中的基本数据类型分为整型、浮点型、字符型和布尔型。

其中,整型包括int和long两种类型,浮点型包括float和double两种类型,字符型则由一个字符组成,布尔型只有两个值:true和false。

流程控制语句:C语言中的流程控制语句包括if语句、switch语句、for循环、while循环和do-while循环。

其中,if语句和switch语句用于进行条件判断,for循环、while循环和do-while循环用于控制程序的循环执行。

函数:在C语言中,函数是一段预定义好的程序代码,在程序中可以多次调用。

函数是程序的基本组成单元,可以增强程序的模块化程度,减少程序的代码量。

函数的定义格式如下:返回值类型函数名(参数列表)C语言基础知识就介绍到这里,希望考生们在考试前好好复习一下,做好准备,取得优异的成绩。

第二篇:指针及其应用指针是C语言中非常重要的一个概念,其应用十分广泛。

在进行二级计算机等级考试中,熟练掌握指针的应用能力是必不可少的,因此本篇将为大家介绍一些关于指针及其应用的内容。

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

计算机二级C考试大纲详细介绍及部分上机技巧注释:本文考纲部分纯属本人照今年二级C考试大纲一字一字打上去的,并另附有部分上机程序改错题的技巧和经验,望对各位有些帮助。

二级公共基础知识作为必考的内容出现在二级各科的笔试试卷中,其出题形式为选择题前十道,填空题钱五道,展示卷总分的30%,即30分。

二级公共基础知识大纲就不在此讲解,下面详细介绍二级C考试大纲。

基本要求(1)熟悉Visual C++6.o集成环境。

<!--[if !supportLists]-->(2)掌握结构化程序的设计方法,形成良好的程序设计风格。

<!--[if !supportLists]-->(3)掌握程序设计中简单的数据结构和算法,并能阅读简单的程序。

<!--[if !supportLists]-->(4)在Visual C++6.o 集成环境中,能够编写简单的C程序,并具有基本的纠错和调试程序的能力。

考试内容<!--[if !supportLists]-->一.C语言的结构。

大纲要求:1.程序的构成,main函数和其他函数。

2.头文件,数据说明,函数的开始和结束标志以及程序中的注释。

3.源程序的书写格式。

4.C语言的风格。

二.数据类型及其运算。

大纲要求:<!--[if !supportLists]--> 1. C的数据类型(基本类型,构造类型,指针类型,无值类型)及其定义和方法。

2.C运算符的种类,运算优先级和结合性。

3.不同类型数据间的转换与运算。

<!--[if !supportLists]--> 4. C表达式类型(赋值表达式,算术表达式,关系表达式,条件表达式,逻辑表达式,逗号表达式)和求值规则。

三.基本语句。

大纲要求:<!--[if !supportLists]-->1.表达式语句,空语句,复合语句。

<!--[if !supportLists]-->2.输入输出函数的调用,正确输入数据并正确设计输出格式。

四.选择结构程序设计。

大纲要求:<!--[if !supportLists]-->1.用if语句实现选择结构。

<!--[if !supportLists]-->2.用switch语句实现多分支选择结构。

<!--[if !supportLists]-->3.选择结构的嵌套。

五.循环结构程序设计。

大纲要求 1. for循环结构。

2. while和do—while循环结构。

3. continue语句和break语句。

4.循环的嵌套。

六.数组的定义和引用。

大纲要求:<!--[if !supportLists]-->1.一维数组和二维数组的定义,初始化和数组元素的引用。

<!--[if !supportLists]-->2.字符串与字符数组。

七.函数。

大纲要求:1.库函数的正确调用。

2. 函数的定义方法。

3.函数的类型和返回值。

4.形式参数与实在参数,参数值的传递。

5.函数的正确调用,嵌套调用,递归调用。

6.局部变量和全局变量。

7.变量的存储类别(自动,静态,寄存器,外部),变量的作用域和生存期。

八.编译预处理。

大纲要求:<!--[if !supportLists]-->1.宏定义和调用(不带参数的宏,带参数的宏)。

<!--[if !supportLists]-->2.“文件包含”处理。

九.指针。

大纲要求:<!--[if !supportLists]-->1.地址与指针变量的概念,地址运算符与间址运算符。

<!--[if !supportLists]-->2.一维,二维数组和字符串的地址以及指向变量,数组,字符串,函数,结构体的指针变量的定义。

通过指针引用以上各类型数据。

<!--[if !supportLists]-->3.用指针作函数参数。

<!--[if !supportLists]-->4.返回地址值的函数。

<!--[if !supportLists]-->5.指针数组,指向指针的指针。

十.结构体。

大纲要求:<!--[if !supportLists]-->1.用typedef说明一个新类型。

<!--[if !supportLists]-->2.结构体和共用体类型数据的定义和成员的引用。

<!--[if !supportLists]-->3.通过结构体构成链表,单向链表的建立,结点数据的输出,删除与插入。

十一. 位运算。

大纲要求:<!--[if !supportLists]-->1.位运算符的含义和使用。

<!--[if !supportLists]-->2.简单的位运算。

十二.文件操作。

大纲要求:只要求缓冲文件系统(即高级磁盘I/O系统),对非标准缓冲文件系统(即低级磁盘I/O系统)不要求。

<!--[if !supportLists]-->1.文件类型指针(FILE类型指针)。

<!--[if !supportLists]-->2.文件的打开与关闭(fopen,fclose)。

<!--[if !supportLists]-->3.文件的读写(fputs,fgets,fputs,fgets,fread,fwrite,fprintf,fscanf函数的应用),文件的定位(rewind,fseek函数的应用)。

考试方式<!--[if !supportLists]-->1.笔试:90分钟,满分100分,其中含公共基础知识部分30分。

<!--[if !supportLists]-->2.上机:90分钟,满分100分。

上机操作包括:<!--[if !supportLists]-->(1)填空。

<!--[if !supportLists]-->(2)改错。

<!--[if !supportLists]-->(3)编程。

程序改错题的解析及技巧(另附)程序改错题分值为30分,是在一个完整的程序中设臵1~3个错误让考生改正,考察的内容与程序填空题(在此省略)相同,这里向大家讲一些上机考试时的经验和技巧。

<!--[if !supportLists]-->1.迅速找到错误位臵。

上机题目中往往会给出错误提示,即/******found******/(简称found注释),错误一般就出现在found注释后的第一行,有几条found注释就有几个错误,这样,就可以方便的找出出错的语句。

<!--[if !supportLists]-->2.排除语法错误。

C语言的语法也是常考的知识点之一,做题前先运行程序,系统会帮助我们找到程序中的语法错误(如缺少“;”,缺少括号,“/”与“\”的混用,单引号与双引号的混用,花括号不搭配),节约做题时间。

3几种常见的错误。

上机考试中有几种常考的错误类型,熟记这些错误可以在做题时起到事半功倍的效果。

<!--[if !supportLists]-->(1)逻辑与运算符“&&”和逻辑或运算符“||”的混用。

这类错误经常出现在if或while条件表达式中,考察两个或多个表达式的并存关系。

解决的方法是根据题意确定此处应该用“&&”,还是用“||”。

<!--[if !supportLists]-->(2)整除运算符“/”和求余运算符“%”的混用。

“/”用来做除法运算,如果参与运算的两个变量都是整型变量,用来得到结果的整数部分;“%”用来求余,得到两个整数相处的余数。

如果在found注释后出现了“/”和“%”,一定要分析清楚此处是在做除法还是在求余。

<!--[if !supportLists]-->(3)赋值号“=”和等号“==”的混用。

这是一个几乎所有人都知道却都容易忽略的错误,这类错误一般出现在if 或while条件表达式中,如if(n=3),“=”用来赋值,所以在条件表达式中是不应该出现的。

<!--[if !supportLists]-->(4)未指定函数类型。

未指定函数的类型本身并不是错误,如fun(int n),C语言规定,若不指定类型标识符则默认为int型,但是如果函数定义出现在found注释行后面,那么,这里很可能是考察函数的定义类型。

<!--[if !supportLists]-->(5)类型转换。

当两个数相除时,很多时候需要进行类型转换,如:a=1/n ,我们1与整数n相除的商,而不是它们的商的整数部分。

解决方法有两个:<!--[if !supportFields]-->1使用强制类型转换,如:a=(double)1/n ;<!--[if !supportFields]-->2将其中一个整数改成实数的形式,即a=1.0/ n 。

<!--[if !supportLists]-->(6)变量的初始化。

在进行累加或累乘操作前,需要对变量进行初始化。

当变量初始化行出现在found注释行后面时,应当仔细分析初始化的值是否正确。

二级公共基础知识总结第一章数据结构与算法1.1 算法算法:是指解题方案的准确而完整的描述。

算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。

算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。

特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。

算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。

指令系统:一个计算机系统能执行的所有指令的集合。

基本运算包括:算术运算、逻辑运算、关系运算、数据传输。

算法的控制结构:顺序结构、选择结构、循环结构。

算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。

算法复杂度:算法时间复杂度和算法空间复杂度。

算法时间复杂度是指执行算法所需要的计算工作量。

算法空间复杂度是指执行这个算法所需要的内存空间。

1.2 数据结构的基本基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。

相关文档
最新文档