C语言考试要求1.C语言的基本概念。(1)源程序的格式、风格和结构,main函数及其他函数的基本概念。(2)基本算术类型数据的表示及使用。①类型标识符(int,float,double,char)的意义及使用;类型修饰符(long,short,signed,unsigned)的意义及使用。②基本类型常量的表示及使用:int型常量的十进制、八进制、十六进制形式;float型常量、double型常量的十进制小数形式、十进制指数形式.;char型常量形式,常用转义字符;字符串常量形式;符号常量的命名、定义与使用。③基本类型变量的命名、声明、初始化及使用。④使用函数返回值作为操作数。(3)运算符和表达式的表示及使用。①表达式的一般组成。②运算符功能、表达式的组成及表达式的值:赋值运算符与赋值表达式,赋值运算符的左值要求;算术运算符与算术表达式,++、--运算符的左值要求;关系运算符与关系表达式;逻辑运算符与逻辑表达式,含有&&,||运算符的表达式的操作数求值顺序与优化处理;逗号运算符与逗号表达式,逗号表达式的操作数求值顺序;条件运算符与条件表达式;位运算符与位运算表达式。③运算符的目数。④运算符的优先级与结合性。⑤表达式运算中操作数类型的自动转换与强制转换。2.基本语句(1)实现顺序结构的语句:表达式语句(包括函数调用语句)、空语句、复合语句;标准设备文件输入输出函数:printf()、scanf()、getchar()、putchar()、gets()、puts()。(2)实现选择结构的语句:if…else…语句、switch语句和break语句。(3)实现循环结构的语句:while语句、do_while语句、for语句。(4)其他语句:break、continue、return。3.构造类型数据。(1)基本类型数组(一维、二维)。①数组的命名、声明及初始化;②数组的存储结构;③数组元素的引用;④字符数组的使用(字符串的存储及基本操作)。(2)结构体变量和数组。①结构体数据类型的定义;②结构体变量、结构体数组的声明及初始化;③结构体变量中成员、结构体数组元素中成员的赋值和引用。(3)联合体变量和数组。①联合体数据类型的定义;②联合体变量和数组的声明;③联合体变量中成员、联合体数组元素中成员的赋值和引用。4.函数。㈩非递归函数的定义、声明、调用及执行过程①函数的定义:函数命名;函数类型(返回值类型):基本数据类型、结构体类型、指针类型;函数形式参数的声明;函数体定义、函数返回值与return语句的使用。②函数的声明(函数原型)。③函数的调用。(2)递归函数的定义、声明、调用及执行过程。(3)函数调用时参数的传递。①传数值:将常量或表达式的值传递给函数;将基本类型变量的值传递给函数,将数组元素的值传递给函数;将结构体变量中一个成员的值传递给函数;将结构体变量全部成员的值传递给函数。②传地址值:将基本类型变量、结构体变量的地址值传递给函数;将基本类型数组元索、结构体类型数组元素的地址值传递给函数。③函数调用时实际参数类型与形式参数类型的兼容。(4)函数返回值的产生①从函数返回一个常量的值、一个表达式的值、一个基本类型变量的值、一个组元素的值、结构体变量中一个成员的值;②从函数返回一个结构体变量全部成员的值。(5)变量的作用域:全局变量、局部变量与函数的形式参数变量的作用域。(6)局部变量、函数形式参数变量的存储类型和生存期。(7)main函数命令行参数。5.指针类型数据。(1)指针与地址的概念,取地址运算符&的使用。(2)基本类型变量的指针操作。①基本类型变量指针的获得;②指向基本类型变量的指针变量的声明。初始化、赋值及使用,指针变量的基本类型③间接引用运算符*的使用。(3)基本类型数组的指针操作。①数组元素指针的获得(指针常量)及算术运算;②指向数组元素的指针变量的声明、初始化、赋值、算术运算及引用;③数组行指针的获得(指针常量)及算术运算④指向数组中一行元素的行指针变量的声明.、初始化、赋值、算术运算及引用。(4)结构体变量、结构体数组的指针操作。①、结构体变量指针、结构体数组元素指针的获得:②指向结构体变量的指针变量的声明、初始化、赋值及引用;③指向结构体数组的指针变量的声明、初始化、赋值、算术运算及引用。(5)函数的指针操作。①函数的指针的获得②指向函数的指针变量的声明、初始化、赋值及引用。(6)指针数组的声明和使用。(7)二级指针的声明和使用。(8)指针作为函数的参数传递给函数:将基本类型变量的指针、结构体变量的指针、数组元素的指针、数组的行指针、函数的指针传递给函数。6.单向链表的建立与基本操作。(1)结点的数据类型定义。(2)使用malloc()函数、free()函数动态申请和释放结点存储区。(3)链表基本操作:建立一个新链表。遍历一个链表的全部结点豹值、插入新结点、删除结点。7.枚举类型数据。(1)枚举类型定义。(2)枚举变量的命名、声明。(3)枚举常量的使用。(4)枚举变量的赋值及使用。8.预处理命令。(1)预处理的概念和特点。(2)#define命令及其使用:定义符号常量、定义带参数的宏。(3)#include命令及其使用。9.文件操作。(1)文件指针变量的声明(2)缓冲文件系统常用操作函数的使用:fopen()、fdose()、fprintf():、fscanf()、fgetc()、fputc()、fgets()、fputs()、feof()、rewind(),fread(),fwrite(),fseek().10.其他常用库函数。(1)数学函数(头文件math.h):abs()、fabs(),sin(),cos()、tan(),asin(),acos()、Atan(),exp(),sqrt(),pow(),fmod(),log(),log10().(2)字符串处理函数(头文件string.h):strcmp()、strcat()、strcpy(),stilen()。(3)字符处理函数(头文件ctype.h):isalpha()、isdigit()、idawer()、isupper()、isspace()。11.应当掌握的一般算法。(1)基本操作:交换,累加、累乘(2)非数值计算常用经典算法:穷举,排序(冒泡法。插入法、选择法),归并(或合并),查找(线性法,折半法)(3)数值计算常用经典算法。①级数计算(递推法)、一元非线性方程求根(牛顿迭代法)、矩阵转置;②一元非线性方程求根(半分区间法):定积分计算(梯形法、矩形法)、矩阵乘法。(4)解决各类问题的一般算法。笔试形式笔试部分由基础知识和c语言程序设计两部分组成,共60分。基础知识全部为单选题,共20分(每题1分)。c语言程序设计部分分为单选题(10分,每题1分)和填空题(30分,每空1分)。答题要求:单选题的答案必须涂划在专用答题卡上;填空题的答案必须写在专用答题纸上(填空时注意:每个填空要按标号顺序填,一空占一行,不是一题一行;因为有的题目一题包含多个空)。c语言考试如何判断合格!江苏省计算机等级考试的考务细则规定:二级笔试和上机操作考试成绩均须达到规定标准,方为合格。优秀的考生则要求两部分都必须达到优秀,总分85分以上(含85分)且两部分都达到了优秀标准,而不是两部分加起来达到85分以上。上机考试形式上机题总分为40分,其中改错题占18分,编程题占22分。(1)改错题:改错题中所存在的错误主要是语法错误(如数组的声明错误、函数定义错误等)、运行错误(如包含不正确的头文件)、逻辑错误等。(2)编程题:编程题程序中,通常都涉及一个有一定难度的算法,考生须按题目要求实现,并且要求考生将算法运行的结果输出到指定文件中。所以,考生必须熟练掌握常用算法和文件的读写操作。上机编程题的方法和技巧(1)开始做编程题时,不要急着动手写程序,一定要把题意理解清楚。然后,在纸上写下关键算法的思想和实现的语句。最后,按“输入数据_数据处理_÷输出数据”的流程写出主程序及相关函数。(2)输出文件处理。在完成编程题时,通常要求考生把结果输出到文件myf2.out中,但在平时练习或考试完成这项功能时,考生常常会遇到一系列的问题:①想查看结果是否输出到myf2.out中,却不知道myf2.out如何打开。找到myf2.out文件后,点击右键,选择“打开方式”,在对话框中选择“记事本”,并选择“始终使用该程序打开这些文件”。以后双击myf2.out文件时,将用记事本打开mym.out。②每运行一次程序,都要打开一次myf2.out,查看运行结果,很麻烦也很浪费时间。其实在编写程序时,没有必要在一开始就将所有结果都输出到myf2.out中,可先将所有结果都输出到显示器上,这样比较直观。待能够正确输出所有结果后,再加人必要的文件输出语句,这样可节省时间。③无法写入myf2.out文件。先检查myf2.out文件的大小,如果文件大小为0K,不用打开文件便可知道文件没有被写入。导致myf2.out无法写入的主要原因是文件操作有误。正确的文件操作过程如下:(a)在源程序中使用#includestdio.h。因为定义文件指针所需要的结构体FILE是在stdio.h文件中被定义的。(b)定义文件指针。例如,“FILE*out;”。(c)打开文件。把要进行读写的文件与磁盘中实际存储的数据文件建立关联。例如:out=fopen(”myf2.out”,”w”);”w”表示为输出打开文件myf2.out。注意它与”a”的不同,”a”是在文件尾部增加数据,而w”是用新数据覆盖原有数据。(d)对文件进行写操作。可使用fprinff对文件进行写操作,函数的格式如下:fprintf(文件指针,格式字符串,输出列表)例如:fprintf(out,”%d”,m);fread(f,4,2,fp);(e)文件使用完毕后,使用函数关闭文件。例如:fclose(out);(3)上机编程题是按步给分的,每项操作都有相应的分值。所以,即便不能编写出完整程序,也不要轻易放弃。要尽量把变量定义和可能要用的程序结构写出来。