C语言复习大纲

发布 2021-05-13 06:11:28 阅读 2268

c语言考试说明:

c语言复习范围包括课本知识和实验。

考试题型包括选择、填空、程序填空和编程题。

选择、填空涉及以下所列的所有知识点以及课后习题。

程序填空主要涉及到分支结构编程、多分支switch结构、循环结构编程、自定义函数编程、有关一维数组的简单编程、有关指针的简单应用等等。

编程题范围主要包括:

1) 选择结构程序设计,如分段函数的求解;

2) 自定义函数实现某个功能,如定义函数求字符串的长度、定义函数判断一个数是否为素数,定义函数判断一个年份是否为闰年等等,此类题目中要注意函数形式参数的定义格式,如形式参数是普通变量?还是指针?或者是数组?

参数不同,定义方式也不同。

3) 简单的一维数组编程,如输入10个数到一个一维数组中,求这些数中的最大值、最小值、平均值、总和等等。

4) 简单的指针编程题,如定义一个指向字符串的指针,利用指针实现字符串的长度统计等等。

考试方式采用闭卷考试,题库中随机抽题组卷。考试涉及的知识点如下面提纲所列。

另外,特别声明:我们所做的实验虽然是程序填空的方式给你们的,但试卷上的程序填空不是从我们的实验中直接抽取,所以不要直接背程序填空答案!!!第1章。

1、 函数是c语言程序的基本单位。一个c语言程序必须包含一个main函数,还可以包含其他函数。main函数是程序的入口和出口,一个程序的执行必须要从main开始。

main函数可以出现在程序中所有函数之前、之后或两个函数中间。

2、 c语言中的函数分为两类,一类是库函数,如scanf、printf、strlen、strcat等等,引用这类函数时,必须要在源程序开头用#include包含上函数所在的头文件。掌握常用到的函数所在的头文件,如等等(可以参照p87 3.6)。

另一类是用户自定义函数。

3、 函数的结构:函数包括函数首部和函数体两部分。

4、 c语言程序书写格式。

5、 c语言不提供输入输出语句,输入输出操作是通过哪些函数实现的?

6、 c语言中有几种注释符号?

7、 c语言中的预处理命令有哪些?

8、 掌握例.6

1、c语言中标识符的命名规则有哪些?

2、c语言中有哪些关键字?

3、c语言中有哪些运算符,其优先级如何?

1、c语言中的基本数据类型。

1)掌握整型常量的3种表示形式。

2)掌握整型变量所占用的内存空间(字节数),如short int、int、long int。

3)实型常量的两种表示形式:掌握哪些是合法的十进制形式,哪些是合法的指数表示形式。

4)c语言中实型变量分为float、double、long double,他们各占内存中多少字节?

5)一个实型常数默认为什么类型?要表示成float类型,应该怎样做?

3、字符型数据。

1)一个字符型数据占用多少字节的内存空间。

2)字符常量怎样表示。

3)常用的转义字符的含义。

4)字符变量中有符号char类型和无符号char类型对应的整数取值范围是哪些?p12

5)字符串常量的定义。字符串常量在内存中所占用的字节数怎样计算?

例如:” g\a9fds\td\\jfsd”的字符个数有几个,占用多少内存空间(字节数)?

6)什么叫指针?哪是指针常量,哪是指针变量?

1、赋值语句:赋值表达式加一个分号构成。赋值号左侧必须为变量。

2、函数调用语句:函数调用表达式加一个分号。

3、什么是复合语句?

c程序的开发步骤。

1)编辑源文件,扩展名为。c。

2)编译源文件,产生扩展名为。obj的目标文件。

3)链接目标文件和函数库,产生。exe文件。

4)执行。exe可执行文件。

1.7数据的输入与输出。

1、printf函数的格式。

2、scanf函数的格式及scanf函数使用注意问题。

1.8宏定义。

1、不带参数的宏定义格式及说明。

2、宏定义的嵌套定义,如例1.12

1.9算法。

1、算法的定义:一系列解决问题的清晰指令。

2、算法的五个特点。

课后习题要求全部掌握。

第2章程序基本结构。

1、分支结构:if-else语句的应用。例2.1、例2.2、例2.3

2、嵌套的if-else结构:例2.4

3、if语句嵌套中c语言规定else如何与if配对?例2.5

4、条件运算符的使用方法,优先级别?例2.7

5、多分支选择语句:switch语句。

1)switch后面的表达式有何要求?

2)case子句后面跟的是什么?

3)case子句有没有流程跳转功能?如果没有,如何实现流程跳转?例2.9

2.2关系运算符和逻辑运算。

1、关系运算符有哪些,比较的依据是什么,结果用什么表示?关系运算符的特点有哪些?

2、逻辑运算符有哪三个?三个运算符的优先级如何排列?与运算和或运算的短路现象是什么?p48①②。例2.10、例2.11

2.3循环结构。

1、while循环语句的格式以及执行过程例2.12、例2.13

2、直到型循环do-while的语句格式以及执行过程。do-while和while有何区别。

3、for循环的语句格式以及相关说明。

3、三种循环语句的比较:相同点和不同点。

例.182.4 break和continue语句的使用。

1、break只能用在循环和多分支语句switch-case语句中,如何使用?

2、continue只能用在循环中。

3、break和continue的区别是什么?

例.212.6 指针。

1、指针的定义格式。

2、指针变量如何赋值?

例2.23、例2.24

3、课后习题要求全部掌握。

p74 /4.找出1000以内的完全数,即这个数为它的所有因子(除自身外)之和。

#include<>

#include<>

void main()

if(factorsum==n)

printf("%d是完数",n);

5、有一分数序列,2/1,3/2,5/3,8/5,13/8,21/13...求出前20项之和。

#include<>

void main()

float a,b,i,s=0.0;//s将存放前20项的和,a为每一项的分母,b为每一项的分子。

a=1;b=2; /第一项为2/1

for(i=1;i<=20;i++)

s+=b/a;

b=a+b;

a=b-a; /下一项的分子是前一项分子分母之和,下一项的分母是前一项的分子。

printf("s=%f",s);

第3章模块化程序设计。

3.2-3.3函数的定义域调用。

1、函数的定义格式,什么是形式参数?

2、函数的调用格式,什么是实际参数?

3、函数间的参数传递:如果是普通变量作为参数(即不是指针变量,也不是数组时),参数的传递方式为“单向传值”。

例3.24、函数的返回值通过什么语句返回?

3.4函数的原型与声明。

1、函数的声明格式。

2、函数声明与函数定义一样吗?

3、函数声明有何作用?

例3.33.7变量的作用域与存储类型。

1、什么是局部变量?什么是全局变量?全局变量的有效作用范围是从**到**?

2、静态变量的使用特性是什么?

例.83.8指针与函数。

1、指针作为函数的参数,此时参数传递方式为:传地址值的方法(不再是单向传值)

例3.10(单向传值.11(传地址值)

课后习题全部掌握。

第4章简单构造数据类型。

4.1 一维数组。

1、一维数组的定义格式:注意长度值必须为常量或常量表达式。

2、一维数组元素的引用:通过下标引用元素,下标可以使变量。

3、一维数组的初始化:p112

例.34.2二维数组。

1、二维数组的定义格式p115

2、二维数组的初始化方法p116

例4.5、例4.6

4.3字符数组与字符串。

1、字符数组的定义、初始化和元素引用p120

2、字符串的定义p121

3、字符串存放在字符数组中,结束标记为‘\0’。

4、字符数组和字符串的区别:它们都是存放在字符数组中。但字符串要求有’\0’作为结束标记,而字符数组没有要求。

5、字符串的输入和输出函数gets()、puts()、scanf(“%s”)、printf(“%s”)。

6、字符串处理的标准库函数的使用方法p124-p126

4.4数组与指针。

1、如何让指针指向一维数组?如何通过指针引用数组中的元素?如何让指针指向数组中的下一个元素?

int a[10];/定义长度为10的整型数组。

int *p;//定义指向整型数据的指针变量。

p=a;//p指向数组中的第一个元素(即下标为0的元素),等价于p=&a[0]

p++;p指向数组中的下一个元素,即p此时指在a[1]上。

p=p+2;//p指针向下移动两个位置,此时p指在a[3]上。

2、数组名作为函数的形式参数,有两种表示方法:指针法和下标法。此时实际参数为数组名(不带)见p133,实参与形参的4中对应关系。

例4.124.5字符串与指针。

1、用字符指针访问字符串。p137例题。

2、字符串作为函数参数。例4.15

例.17课后习题全部(除了编程题的题)掌握。

编程题6的参***:

#include<>

void convert(char s,long int n)

int i=0,j;

char t;

while(n!=0)

s[i]=n%10+'0';

i++;n=n/10;

s[i]='0';

j=0;i--;

while(i>j)

t=s[i];

s[i]=s[j];

s[j]=t;

i--;j++;

void main()

long int n;

char s[50];

printf("请输入一个长整型数据:")

scanf("%ld",&n);

convert(s,n);

puts(s);

第5章。1、结构体的定义p161

2、结构体变量的定义,结构体变量所占内存空间的计算方法。

3、结构体变量中成员的引用,结构体变量的初始化方法。

复习大纲c语言

一 基本概念。1.标识符的合法定义 能够判别定义的变量名 函数名是否合法。2.书写规则,语句的写法,注释语句的写法 3.逗号运算符的使用方法,注意与赋值运算的优先级 4.数学表达式的c语言书写 5.掌握四则混合运算。1 的运动优先级。2 整数除法与实数除法的区别 3 运算对操作数的要求 4 运算中隐...

C语言复习大纲

第一部分基础知识。1.二进制与十进制之间的相互转换。第二部分算法。2.流程图的符号及流程图画法。第三部分数据类型 运算符与表达式。1.标识符定义。2.常量与变量。3.字符常量 字符串常量 字符串结束符。4.运算符与表达式,5.printf函数和scanf函数,格式字符 d,f,s,c,第四部分 c语...

C语言复习大纲

2008c语言复习大纲。类型 1 简答题 24 2 阅读程序 22 比较简单,得分题,注意变量 指针的每次变化 3 改错 16 包括书写错误,和逻辑错误 4 程序设计 22 5 程序填空 16 1 表达式计算 常用函数 log x log 10 x pow x,y sqrt x abs x fabs...