

下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C程序设计知识点第 1章 C语言概述C程序设计知识点都懂了,一定过!第 1 章 C 语言概述1.1.1.2.C 语言属高级语言,区分字母的大小写,以函数为基本单位采用模块化程序设计,可直接访问内存,进而对硬件进行操作。用 C 语言编写和程序称作 C 源程序,简称 C 程序,C 程序可由若干个文本文件组成,文件扩展名为 C(使用 编译器时默认扩展名为 CPPC EXE (目标程序)。预处理编译、连接执行若干个 C 程序文件-C -目标程序文件-1.3.C 程序从主函数开始执行,每个 C 程序有且仅有一个主函数,因此,每个 C 程序文件中至多有一个主函数。1.4.1.5.1.6.C 语句以分号结尾
2、,用括起来的一组语句称作复合语句,复合语句可省略花括号之后的分号。允许一行内写多个 C 语句,也允许一个 C 语句占用多行,但保留字和标识符不可拆行。在 C 集成环境VC+ 6.0 中,新建工程、保存当前程序文件、编译当前程序、执行当前程序的快捷键依次为:Ctrl+N、Ctrl+S、F7、Ctrl+F5。第 2 章 程序设计的灵魂算法2.1.2.2.2.3.解决问题的方法和步骤称作算法。算法和数据结构是程序的两个主要要素。算法具有确定性、有穷性、有效性等特点。N-S 图、计算机语言、伪代码等描述。伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法。起止框处理框流程线有向线段或折线图
3、2.1 ANSI流程图符号第 1页 共 12页C程序设计知识点2.4. 算法的基本结构分为:顺序结构、选择结构、循环结构。第 3章 数据类型、运算符与表达式YN条件N条件Y条件NY-图 2.3 选择结构图 2.2 顺序结构图2.4 当循环条件图 2.5 直到循环条件图 2.6 顺序结构图 2.7 选择结构图2.8 当循环图 2.9 直到循环2.5.化程序设计通常采用“自顶向下、逐步细化”的设计方法。第 3 章 数据类型、运算符与表达式3.1. C 的数据类型如下所示:表 3.1 C语言的数据类型无符号短整型(unsigned short int)有符号短整型(signed short int)
4、无符号长整型(unsigned long int)有符号长整型(signed long int)单精度实型(float)02 -11602 -132-2 2 -13131402 -18构造类型2结构体类型共用体类型3.2.C 符号常量名、变量名、函数名等统称标识符,标识符的命名规则为:以字母或下划线开头,由字母、数字、下划线组成,超出 32 个字符部分被忽略(最好不超过 8个字符)。3.3.3.4.以 0 开头的整数为八进制整数,以0X 或0 x 开头的整数为十六进制无符号整数。-3276832767 为 int 型,65535U 为 unsigned 型,65536U4294967295U
5、和 4294967295UL为 unsigned long 型,-2147483648-32769、327682147483647 和-2147483648L2147483647L 为 long型。后缀 U 和 L不区分大小写和次序。3.5.3.6.数据的存储字节数可用运算符 sizeof()查询,括号内可是数据、表达式或类型名。有符号整数(int和long)-65535U-1U与65535U依次相等,-4294967295UL-1UL与 4294967295UL 依次相等。3.7.定点数(含小数点数)和浮点数统称 C 实型常量,浮点数的一般形式为:第 2页 共 12页C程序设计知识点第 4章
6、 顺序结构程序设计尾数 e 除码或尾数E除码其含义为:尾数 除码其中,尾数为定点数或整数,除码为整数。标准浮点数的小数点在第 1 位非 0 数字之后。后缀 L 或 l的实型常量为长双精度,无后缀实型常量为双精度。3.8.3.9.用一对单引号括起来的单个字符称作 C 字符常量,其值为该字符的 ASCII码(1 字节无符号整数)。转义字符、分别表示回车符、制表符、反斜杠、单引号、双引号。3.10. 转义字符整数x整数(或X 整数)中的整数分别为八进制、十六进制,表示以此整数为ASCII码的字符。3.11. 用双引号括起来的一串字符称作 C 字符串型常量,串中字符数称作串长,可以为 0。字符串的存储
7、形式为:依次存储字符串中字符的 ASCII码,并追加一个空字符0(1 字节无符号整数 0)。3.12. 字符型、整型、实型数据统称数值型数据,不同类型的数值型数据可以混合运算,低精度数据被自动强制转换为高精度数据后方参与运算。另外,字符常量为有符号短整数,两个字符型数据间的运算按有符号短整数处理。3.13. 如果将数值型数据赋给不同类型的数值型变量,则数值型数据将被自动强制转换为变量的数据类型。3.14. C 允许定义变量的同时赋初值。3.15. C 运算符及其优先级、结合性如附录 C(教材第 365 页)所示。3.16. 强制数据类型转换的一般形式为:(类型名)数据3.17. 自增、自减-运
8、算只能作用于变量,作用于右侧时,返回变量自增、自减前的值。3.18. 赋值表达式的格式为:变量=表达式或变量op=表达式op 为运算符 -、/&、| 中某一个。前者将右边表达式的值赋给左边的变量,后者将左边变量的当前值与右边表达式的值作相应运算后仍赋给左边的变量。整个赋值表达式取左边变量所赋的新值。3.19. 用逗号分隔的一组表达式称作逗号表达式,其一般形式为:表达式, 表达式, , 表达式其功能为:从左至右依次计算各表达式的值,并以最后一个表达式的值为整个逗号表达式的值。3.20. 将数学式改为 C 表达式时应注意:(1)(2)(3)(4)(5)(6)乘号不可省略;正确改写脚码、运算符、括号
9、等;正确书写函数名;把握好运算优先级,分数线改为/时,分子、分母相应加括号;正确拆分不等式组;区分整数除法和实数除法。第 4 章 顺序结构程序设计4.1.表达式后缀分号称作表达式语句,即,表达式;putchar、getchar、printf、scanf 等输入输出函数的原型在头文件 stdio.h 中。4.2.4.3.函数 putchar 和 getchar的格式和功能如下:第 3页 共 12页C程序设计知识点第 4章 顺序结构程序设计(1)putchar格式:putchar(表达式) ASCII(自动强制转换为 int 型)。(2)getchar格式:getchar()功能:从标准输入设备输
10、入一个字符,并以该字符为函数值。注意:getchar 可提取空格及回车、Tab 等部分控制字符,而且只提取输入中相应位置上的一个字符,因此,输入字符间无须分隔,否则也被视为输入字符。4.4.printf 函数的格式和功能如下:格式:printf(格式控制串, )功能:(1) 从右至左依次计算输出表列中各表达式的值;(2) 从左至右依次输出格式控制串中的字符,其中,引导的格式控制符由输出表列中相应表达式的值所取代。输出表列是一组用逗号分隔的表达式(又称输出项,可以为 0 项)。格式控制串为字符串型数据(可以是表达式)。其中,格式符用于控制输出表列中相应表达式的输出格式。格式符及其功能如下表所示:
11、表 4.1 printf格式字符d 或 i无符号八进制短整数 无前缀(0)x或 X无符号十六进制短整数(无前缀 0 x,数字的大小写与 x相同)字符csf定点数 默认 6 位小数 。()l插在和 d、i、u、o、X 之间,表示输出相应长整数。插在和其它格式符之间,前一个整数的绝对值为输出数据的宽度,后一个整数控制实际输出 0位数,不足右补 0负时,输出数据左对齐,否则右对齐。整数.整数4.5.scanf函数的格式和功能如下:格式:格式控制串, 地址表列)其中,格式控制串为字符串型数据(可以是表达式),地址表列是一组用逗号分隔的地址。功能:(1) 右至左依次计算地址表列中各表达式的值;(2) 从
12、标准输入设备提取数据,并从左至右依次存储到所指定的存储单元。第 4页 共 12页C程序设计知识点(3) 地址表列中的地址可用表达式表示,通常形式为:第 5章 选择结构程序设计变量其中是地址运算符,它表示取其后变量的存储(起始)地址。说明:(1) scanf函数格式符与 printf 函数的格式符的功能相似。scanf均等效,另外,表 4.2 scanf的附加格式符说明附加格式符正整数*指定输入数据的最大宽度(插在与其它格式符之间)跳过当前一个数据(插在与其它格式符之间)跳过当前指定个字符(插在与其它格式符之间)正整数(2) 如果格式控制串中有非格式符,则输入数据中对应位置上必须是该字符,且被跳
13、过,这为指定数据间分隔符提供了方便。(3) printf 和 scanf格式控制串中的每对从左至右结合)按一个普通字符对待。第 5 章 选择结构程序设计5.1.C 逻辑值为短整数(int),真、假分别为 1、0。另外,字符、数、指针作为逻辑量时,非 0、非空为真(即1),0、空为假(即0)。逻辑运算如下表所示:表 5.1 逻辑运算真值表左元假(0)右元真(1)假(0)真(1)假(0)左元右元假(0)左元右元假(0)假(0)真(非 0)假(0)真(非 0)真(1)真(非 0)真(非 0)假(0)真(1)真(1)真(1)5.2.5.3.对于形如|的逻辑式,从左至右计算的逻辑值,遇到真则提前终止。对
14、于形如&的逻辑式,从左至右计算的逻辑值,遇到假则提前终止。5.4.5.5.算术、关系、逻辑运算的优先级参见附录 C(教材第 365 页)。if语句的格式和功能如下:(1) 格式一:条件) 语句功能:如果条件成立,方执行语句。(2) 格式二:条件)语句 1 else 语句 2功能 如果条件成立,执行语句1,否则执行语句 2。注意:else不可独立使用,它与其前最近一个尚未配对的 if 配对,为避免歧义,通常只在 else中嵌套 if语句。5.6.条件表达式的格式和功能如下:格式:条件表达式 1:表达式 2第 5页 共 12页C程序设计知识点功能:如果条件成立,取表达式 1 的值,否则取表达式2
15、的值。第 6章 循环结构程序设计说明:条件表达式可以嵌套,与其前最近一个尚未配对的 if配对。5.7.switch语句的格式和功能如下:格式:switch(表达式)case 常量 i: 语句组 idefault: 语句组 n+1功能:如果表达式的值等于常量 i,则从语句组 i 开始执行,否则执行语句组n+1。说明:(1) “表达式”的值和“常量”为整型(包括字符型)。(2) switch中的每个语句组称作一个分支,为使各分支独立,通常以breakreturnexit等语句结尾。另外,“default: 语句组 n+1”可以缺省。5.8.break语句的格式和功能如下:格式:break;功能:结
16、束本层 switch语句或本层循环语句。说明:break语句只能用于 switch 语句和循环。第 6 章 循环结构程序设计6.1.6.2.6.3.while语句的格式和功能如下:格式:while(表达式)循环体功能:当表达式的值为真时,重复执行其后循环体。说明:循环体是循环语句的内嵌语句,可以是空或复合语句(下同)。do-while 语句的格式和功能如下:格式:do 循环体 while(表达式)功能:重复执行循环体,直到表达式的值为假。说明:do-while 循环至少执行一次循环体。for语句的格式和功能如下:格式:for(表达式 1; 表达式2; 表达式 3) 循环体功能:(1) 计算表达
17、式 1;(2) 当表达式 2 的值为真时,重复执行循环体和计算表达式3。说明:表达式 1、表达式 2、表达式3 均可缺省,但保留分号。continue 语句的格式和功能如下:6.4.格式:continue;第 6页 共 12页C程序设计知识点功能:跳过循环体中其后程序段(结束本次循环)。第 7章 数组说明:continue 语句只能用于循环。6.5.掌握以下算法:累加、阶乘、判断素数、分解整数数字、递推数列、打印字符图形。第 7 章 数组7.1.7.2.同一类型数据的序列称作数组,数组中数据用相应下标变量访问,因此,数组亦可视为由下标变量组成的序列。定义数组语句的一般格式和功能为:格式:数据类
18、型名 数组名第1 第n 功能:为数组分配连续内存单元,用于存储数组中的下标变量(低维优先),并将起始地址(又称基址)赋给数组名。说明:数组长度只能为整型常量或整型常量表达式。7.3.7.4.数组的要素有:数据类型、数组名、维数及各维的长度。各维的长度必须是常量,可用常量表达式表示,其值的整数位有效截断取整。下标变量的格式为:数组名第1 第n 7.5.7.6.7.7.下标从 0 开始,可用表达式表示,其值的整数位有效。下标最大值比长度小1。下标变量的使用与普通变量相同。定义数组的同时可对数组中的下标变量赋初值。格式:数据类型名 数组名第1 第n =数据表功能:定义数组的同时将数据表中数据依次赋给
19、数组中下标变量,未赋值下标变量的初值为相应数据类型的 0。说明:数据表中的数据必须是常量,可用表达式表示。第 1 维长度可省略,如果省略,其长度由数据表和其它维长度确定存储所需的最小长度。7.8.7.9.以字符为数据元素的数组称作字符数组,它由一组字符型下标变量组成。除赋值外,字符数组名的使用与字符串变量相似。字符数组也可用字符串初始化。标准函数库提供许多用于处理字符串的函数。表 7.1 常用字符串处理函数string.hstrlwr(串)将串中大写字母均转换为相应小写字母。将串中小写字母均转换为相应大写字母。strupr(串)注意:输出字符串及处理字符串的函数,均忽略字符串中第一个及其后的字
20、符。7.10. 掌握冒泡排序。第 7页 共 12页C程序设计知识点第 8 章 函数第 8章 函数8.1.自定义函数的格式为:函数值类型 函数名(带类型声明的形参表列)函数值的默认数据类型为 int。如果函数有返回值,则用 return 语句返回,其格式为:return ; return(表达式);函数体8.2.8.3.或8.4.8.5.如果函数无返回值,即函数值类型为 void,亦可用格式:return;结束本函数并返回调用者。函数一般调用格式为:函数名(实参表列)其中,实参表列为一组逗号分隔的表达式。实参按从右至左的次序计算并传递给相应形参。如果函数调用在其定义之前,调用前应作相应声明,声明
21、格式为:函数值类型名 函数名(形参及其类型声明表列);8.6.其中,形参可省略。8.7.8.8.函数不可嵌套定义,但允许嵌套调用,亦可直接或间接调用自身(称作递归函数)。递归函数的函数体的一般格式为:(B 班同学不作要求)递归条件)语句 1else 语句 2或递归时,如何递归*/非递归时,如何处理*/递归条件)语句 1 /*非递归时,如何处理*/else 语句 2 递归时,如何递归*/8.9.形参及函数内定义的变量称作局部变量,它从定义处生效,且只在该函数内有效。因此,不同函数中的局部变量可以同名,但同名不同义。8.10. 在所有函数之外定义的变量称作全局变量,它从定义处生效。8.11. 如果
22、局部变量与全局变量同名,则同名全局变量被屏蔽。8.12. 局部变量的存储方式分为:自动(auto,默认)、静态(static)(register)。8.13. 存储方式和数据类型是变量的两个重要属性,必须在定义变量时一并声明,关键字的排列顺序没有限制。变量的默认数据类型为 int,默认存储方式为auto,但关键字auto 和 int 不可同时缺省。8.14. auto 型局部变量占用动态数据区,当函数调用结束时释放所占内存。register占用 CPU 中的寄存器,但寄存器不够用时,占用动态数据区。8.15. 全局变量和 static 型局部变量占用静态数据区,默认初值为相应数据类型的 0。8
23、.16. static 型局部变量的声明和初始化只执行一次。8.17. 如果全局变量被声明为 static 型,则其它程序文件不能使用该全局变量。否则,其它程序文件也可使用该全局变量,但使用前应作 extern 声明。8.18. 被声明为 static 型的函数,只在本程序文件中有效,不能被其它程序文件调用。否则,其它程序文件也可调用此函数,但调用前应作 extern声明。8.19. 常用数学函数在头文件 math.h 中。掌握基本初等函数。第 8页 共 12页C程序设计知识点第 9 章 预处理命令第 9章 预处理命令9.1.9.2.预处理命令在程序编译前执行,其主要功能是“文本置换”。不带参
24、数宏定义的格式和功能如下:格式:#define 宏名 文本功能:在预处理时,将程序中宏名用相应的文本置换。带参数宏定义的格式和功能如下:9.3.9.4.格式:#define 宏名(形参表列) 文本功能:在预处理时,将程序中带参数的宏用相应的文本置换,且文本中的形参被相应的实参所置换。注意:形参无须且做类型声明。终止宏定义的格式如下:格式 #undef 宏名9.5.9.6.9.7.宏定义可以引用已有的宏,亦可重新定义所代表的文本。预处理命令无须以分号结尾,否则分号也参与置换。#include 命令的格式和功能如下:格式一:#include 文件名格式二:#include 功能:在预处理时,用指定
25、文件置换本命令加载文件。置换后,被包含文件成为本文件的一部分,其函数、全局变量等均可在本文件中直接使用,无须作 extern 声明。前一种格式先在当前目录中找指定文件,如果未找到,方到存放 C 头文件的目录中查找。后一种格式直接到存放 C 头文件的目录中查找指定文件。9.8.条件编译命令的格式和功能如下:格式一:#ifdef 宏名 程序段 1 #else 程序段 2 #endif功能:在预处理时,如果指定的宏名已定义,则用程序段 1 置换本命令,否则用程序段 2 置换本命令。当程序段 2 为空时,#else (下同)。格式二:#ifndef 宏名 程序段 1 #else 程序段 2 #endi
26、f功能:在预处理时,如果指定的宏名未定义,则用程序段 1置换本命令,否则用程序段 2置换本命令。格式三:#if 常量表达式 程序段1 #else 程序段2 #endif功能:在预处理时,如果指定常量表达式的值为真(非 0),则用程序段1 置换本命令,否则用程序段2 置换本命令。9.9.注释命令在预处理时被删除,不影响源程序和目标程序。注释命令的格式如下:注释内容*/第 10 章 指针10.1. 内存的基本单位是字节,每个字节都有相应的编号,称作地址或指针。借助于指针,C 语言可以直接访问内存,从而对硬件进行操作。10.2. 变量所占用内存的大小由其数据类型决定,变量所占用内存的第 1 个字节的
27、地址称作该变量的地址或指针,表为:变量名10.3. 指针所指向数据的类型称作该指针的基类型,它所指向数据用指针第 9页 共 12页C程序设计知识点访问,可作为普通变量使用。第 10章 指针10.4. 指针本身也是一种数据类型,占用 2 字节内存,可作为无符号整数输出和参与关系运算、逻辑运算,但指针的其它运算不同于整数运算。10.5. 指针运算可简单地分为以下五类:(1) 单目运算有六个:、+、-、。(2) 双目运算有四种:-、关系运算、逻辑运算、赋值运算。(3) 指针与整数间的运算有三个:、-、 。(4) 强制类型转换运算:( )。(5) 结构体成员运算:-。其中,、-、-、-=均以基类型数据
28、为基本单位。10.6. 一维数组的数组名可作为指针调用,它指向数组中的第一个元素,以数组中元素的类型为基类型。数组名的值不可修改,且 sizeof(数组名)的值为整个数组所占内存的字节数。10.7. 对于一维数组来说,基址+i 和 基址i均指向数组中的第 i+1 个元素;基址+i) 和 i均表示数组中的第 i+1 个元素。10.8. n 维数组可看作是以 n-1 维数组为元素的一维数组,数组名可看作是指向数组中的第一个n-1 维数组的指针。10.9. 下标变量可作为实参,但不可作为形参,实际上,它被误认为指针。10.10. C C 源程序中,函数指针用函数名表示,其值不可修改。以函数指针为值的
29、变量称作函数指针变量,其定义格式为:函数类型名函数指针变量名)( );可用下述格式代替函数名:函数指针)10.11. 函数返回值可以是指针,定义函数的一般格式为:1基类型 函数名(形参列表)函数体10.12. 不允许将非 0 数直接赋给指针变量,须做强制转换。当指针变量的值为0 时,称之为空指针。10.13. 以指针为元素的数组称作指针数组。10.14. 以指针为基类型的指针称作指向指针的指针,以指向指针的指针为值的变量称作指向指针的指针变量,其定义格式为:存储方式关键字 基类型名 指向指针的指针变量名10.15. C 源程序经编译、连接所得目标程序(exe文件)可作为 DOS 外部命令使用,
30、命令行的一般式为:路径目标程序文件名 参数 1 参数 2 参数 n10.16. C 主函数 main int 用于接收命令行中各字符串。带参主函数的格式为:void main(int 形参1,char 形参 2 ) 函数体标注表示此部分为非考试内容。1第 10页 共 12 页C程序设计知识点第 11章 结构体与共用体其中,形参 1=参数个数+1形参 20=路径目标程序文件名形参 2i=参数 ,i=1,2,n第 11 章 结构体与共用体11.1. 声明结构体语句的一般格式为:struct 标识符成员表列;其中,成员表列为一组声明变量的语句,这些变量称作该结构体的成员,又称数据项、分量、域、字段等。语句结尾处的分号不可缺省,标识符可以省略,如果不省略标识符,则新增一个数据类型(名):struct 标识符11.2. 定义结构体变量的一般格式为:struct 标识符 变量表列;也可在声明结构体的同时定义变量:struct 标识符成员表列;11.3. 结构体变量可在定义时赋初值,类似于数组
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年关于上海租房合同范本
- 2025租赁合同范本(正式版)
- 2025混凝土浇筑挡土墙施工的合同
- 2025标准办公室装饰装修合同范文
- 养殖管理标准化操作体系
- 护理定科总结
- 神经外科癫痫护理
- 传染病防治卫生监督检查
- 2025年护理工作管理规范试题
- 全球宠物市场洞察之泰国篇:本土与出口市场双扩张中国品牌布局正启航402mb
- 成立危急重症抢救小组通知1
- 国际恐怖主义形势与趋势分析
- 人工智能在人力资源招聘中的应用
- 电气试验报告模板
- 国家中小学智慧教育平台培训专题讲座
- 文艺晚会人员分工完整
- 关于运营工作计划模板汇编
- 安全生产知识与管理能力考核合格证申请表(安全生产管理人员)
- 高支模巡视检查记录
- 园林工程施工现场危险源一览表
- 500KV变电站设备、接线特点及保护配置原则
评论
0/150
提交评论