您好,欢迎访问三七文档
c语言学习总结1、c语言特点优点:(1)、c语言简洁、紧凑、灵活。书写格式自由。(2)、表达方式简练、实用。(3)、具有丰富的数据类型。(4)、具有低级语言的特点。(5)、c语言是一种结构化语言。(6)、各种版本的编译器都提供了预处理命令和预处理程序。(7)、可移植性好。(8)、生成的目标代码质量高。(9)、c语言语法限制不严,程序设计自由度大。缺点:(1)、c语言程序的错误更隐蔽。(灵活性使编写容易出错,而编译器不检查这样的错误)(2)、c语言程序有时难以理解。(数据类型多,运算符丰富且结合性多样)(3)、c语言程序有时难以修改。(缺少模块特性)2、计算机解题过程分析问题——设计算法——编写程序——运行验证3、算法定义:是精确定义的一系列规则的集合,这些规则规定了解决特定问题的一系列操作,以便于在有限的步骤内产生出问题的答案。4、算法的特点:有穷性:每一步都可以在有穷的时间内完成。确定性:语句无二义性。同时无论如何算法都只有唯一的一条执行路径,即相同的输入只能得到相同的输出。可行性:算法中描述的操作都可以通过已经实现的基本操作执行有限次数来实现。输入:有零个或者多个输入输出:有一个或多个输出。5、算法的表示:自然语言描述传统流程图N-S流程图伪代码6、常用算法:(1)、枚举法又称穷举法。通过考察问题的所有可能解找出问题的真正解。(2)、递推法又称迭代法。从已知的初始条件出发,逐次退出中间结果。在理想状态下,每递推一次,结果逐渐接近问题的最后解。(3)、递归法一个直接或间接调用过程(或函数)自身的算法成为递归算法,一个函数如果调用自身进行计算则成该函数为递归函数。回朔法,贪婪法,分治法,动态规划法。7、结构化程序设计方法特点:(1)、采用自顶向下,逐步求精的程序设计方法。(2)、任何程序只采用程序、选择和循环三种基本控制结构。8、printf()函数是c语言的标准库函数,该函数原型在标准库函数的头文件stdio.h中定义,所以需要使用#include命令加以包含。9、定义空函数是为了形式上临时使用这个函数,已检查所编写的程序是否存在语法错误。同时使得编写的程序可以运行,这样就可以先验证空函数以外的程序逻辑是否正确,暂时不用等待那个函数的完成,可以提高编写程序的效率。10、计算机语言程序的最小单位是字符,即程序是由字符组成的。程序是符合语法规定的字符的有序序列。11、c语言字符集包括:(1)、字母(2)、数字(3)、下划线(4)、符号标点:逗号、分号、双引号、单引号等(5)、特殊字符:加号、减号、乘号、除号、百分号、等于号、圆括号、方括号、花括号、大于号、小于号、感叹号、反斜杠、竖线、制表符(Tab)、空格符等。12、关键字又称为保留字,是语言中被赋予特定含义的单词符号。关键字用途intcharfloatdoublelongshortsigned(有正负之分的)unsignedstruct(结构体)union(共用体)enum(枚举)void(空)auto(自动的)extern(外来的)register(注册,寄存器)statictypedef(定义类型)类型ifelseswitchcasedefault(系统默认)选择语句dowhilefor循环语句breakcontinuegoto(转到)return控制转移Const(常量)volatile(不稳定的)sizeof(占字节数)其他13、标识符c语言程序中,通常需要对函数、变量、符号常量、数据类型和数组等进行命名,这些名称称为标识符。Max和max不是同一个标识符。标识符的语法规则:(1)、首字母必须是字母或下画线(2)、只能包含字符(字母,数字,下画线)(3)、标识符不能是关键字(4)、标识符不能跨行书写标识符遵循的原则:(1)、选择具有一定意义的英语单词做标识符。例如day,sum。(2)、适当的使用下画线。例如load_num。(3)、使用约定俗成的标识符。(4)、标识符的长度不要过长。(5)、用大小写区别命名。通常变量使用小写字符开头的标识符,通常符号变量往往使用大写字符的标识符。14、c语言的数据类型定义了该类型数据的存储空间大小。选用适当的数据类型,达到节省存储和加快计算速度的目的。数据类型决定了此类数据的存储空间、表示形式及取值范围。15、c语言主要的数据类型有四类:基本类型,构造类型,指针类型,空类型。整型int整数类型短整型shortint长整型longint无符号整型unsigned单精度浮点型float基本类型浮点类型双精度浮点型double长双精度浮点型longdouble字符类型char枚举类型enum(int)数组intpoint[10];结构体structstructdate{构造类型intyear;intmonth;数据类型intday;}共用体unionunion{intlength;charname[20];doublevalue;}指针类型(*)int*pint;char*pstring;空类型voidvoid*p;voidmain()有关整数类型的知识点16、signedshortint和shortint和short表示同样的类型。同理。17、c语言标准库头文件limits.h中定义了若干符号常量他们的值包括各种整数类型的最大值最小值。例如:SHRT_MAX,INT_MAX,LONG_MAX,分别为短整型,整型,长整数的最大值。18、整数类型数据之间的算术运算,结果还是整数。19、整数类型的数据进行算术运算还可能发生整数溢出的情况,运算结果如果超出了数值表示范围则产生溢出。乘法,加法和减法都可能会产生整数溢出。溢出后的结果错误。20、类型16位机整数类型32位机整数类型shortint2个字节(-2^15~2^15-1)2个字节(-2^15~2^15-1)unsignedshortint2个字节(0~2^16-1)2个字节(0~2^16-1)int2个字节(-2^15~2^15-1)4个字节(-2^31~2^31-1)unsignedint2个字节(0~2^16-1)4个字节(0~2^32-1)longint4个字节(-2^31~2^31-1)4个字节(-2^31~2^31-1)unsignedlongint4个字节(0~2^32-1)4个字节(0~2^32-1)浮点类型相关知识点21、类型存储表示范围精度(有效位数)float4字节-3.4*10^(-38)~3.4*10^(-38)7位数字double8字节-1.7*10^(-308)~1.7*10^(-308)16位数字longdouble10字节-3.4*10^(-4932)~3.4*10^(-4932)19位数字双精度浮点型可以满足绝大多数的应用要求长双精度浮点型要求最高23、c语言标准没有明确单精度浮点型、双精度浮点型和长双精度浮点型的精度,即没有明确这些类型使用的存储空间字节数。这是由于不同的计算机有可能用不同的方法存储浮点数。大多数现代计算机都遵循IEEE754标准(即IEC60559)的规范。字符类型的相关知识24、字符类型主要用于文字或文本数据的处理。由于不同计算机有可能采用不同的字符集,所以字符类型的值也可能根据计算机的不同而不同。最常用的字符集是ASCII(美国信息交换标准)字符集。它用7位二进制码表示128个字符。25、c语言允许吧字符作为整数来使用,所以字符类型与整数字符类型一样,也分有符号和无符号两种类型。c语言标准没有明确字符类型是否有符号,不同的c语言编译器对字符类型的处理是不一样的。一般情况下,字符类型的数据是字符编码,所以一般不关注字符类型是否有符号,只有在某些特定情况下需要了解字符类型是否有符号。26、字符常量用单引号括起来。为了使程序可以处理字符集中的每一个字符,c语言提供了一种特殊的表示法——转义序列,通常称为转义符。有字符转义符(反斜杠(\)加字母)和数字转义符(有八进制‘\ddd’和十六进制转义符‘\xhh’两种)两种。27、c语言标准库的头文件ctype.h中定义了若干与字符处理相关的函数(实际上是宏),例如字母大小写转换函数和字母大小写判断函数等。其中函数toupper()可以将小写字母转换成大写字母。常量和变量27、c语言常量有整数常量、浮点数常量、字符常量和字符串常量。28、c语言也提供预处理命令#define定义符号常量,使用标识符作为符号常量的名称。例如:#definePI3.14159doubleradius=10,circumference,area;circumference=2*PI*radius;area=PI*radius*radius;29、c语言整数类型常量有十进制,八进制,十六进制。十进制首字母不能为零八进制首字母必须是零,以零开头,有数字0~7组成十六进制以“0x”或“0X”开头,由0~9,a~z,A~Z。30、浮点数常量有十进制表示法和指数表示法,浮点数常量必须包含小数点或指数部分,可以带正负号十进制表示法包含整数部分和小数部分。例如897.指数表示法包含尾数部分和指数部分,位数部分可以是整数或十进制浮点数;指数部分是以字符E或e开头,后面跟一个可以带正负的整数。例如:-123E3表示-123*10^3,987.654e-10表示987.654*(-10)。31、单精度浮点数常量后缀为F或f双精度浮点数常量没有后缀长双精度浮点常量后缀为l或L32、字符常量是用单引号括起来的单个字符。注意,其中的单引号不是字符的一部分,只是起分隔作用,称为字符常量定界符。33、转义符也是字符常量的一种特殊表示形式。34、用八进制转义符或者十六进制转义符可以表示任何字符。35、字符串常量是用一对双引号引起来的零个或者多个字符序列。字符中的字符数称为字符串的长度,零个字符的字符串称为空串。例如:字符串“a”的存储形式为‘a’‘\0’字符串“Howareyou”的存储形式为:‘H’‘o’‘w’‘_’‘a’‘r’‘e’‘_’‘y’‘o’‘u’‘\0’c语言的字符串在存储是默认结尾有一个结束标志‘\0’,该标志的值是0.需要注意的是,计算字符串长度时,不要把该字符计算在内;计算字符串存储字节数时,需要把该字符计算在内。设置字符串的结束标志的目的是为了方便程序员对字符串进行处理。36、c语言的变量代表的是存储空间,也可以代表存储单元。在程序运行过程中,如果变量的存储单元的内容被改变,则意味着变量的值改变了。37、一个变量有三个要素:变量名,存储单元,变量值。例如:inta=10;定义整形变量a,并设置初值为10,存储单元是整型。38、变量声明:数据类型变量名列表;变量声明后,编译器只是给变量分配了存储单元,并未对存储单元赋值,变量存储单元中的值是不确定的。39、变量初始化:声明变量的同时可以为变量指定一个初值(即变量的初始化);也可以对声明的变量名列表中的部分变量进行初始化。注意,若对几个变量赋予同一个初值,应该写成:inta=2,b=2,c=2;(inta=b=c=2;错误)运算符和表达式40、从功能上看,c语言中有算术运算符。关系运算符、逻辑运算符和赋值运算符。从操作数数量上看,c语言的运算符又分为单木运算符、双目运算符和三木运算符。41、复合赋值运算符构成的表达式的一般形式是:v=(type)(vope)其中,type是v的类型,(type)是强制类型转换,将表达式(vope)的值转换为v的类型的值;;v是变量或存储单元;op是双目运算符,可以是算术运算符(+,—,*,/,%)和位运算符(&,|,^,,);e是表达式。其语义是对表达式(type)(vope)进行求值,将结果送到变量或存储单元v中。例如:doublePI=3.1415926,radius=5.0,height=3.0;intvolume=0;volume+=PI*radius*radius*height/3.0;运行后,变量值volume为整数78,这里发生了类型变换,即将运算符+=右边表达式的值转换为变量volume
本文标题:C语言学习总结
链接地址:https://www.777doc.com/doc-3707199 .html