




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C程序设计各章重点知识总结第一章C语言概述1、 C程序的组成和形式的基本特点(P6-7)(1)C程序是由函数构成的,一个C源程序至少且仅包含一个main函数,也可以包含一个main函数和若干个其他函数。(2 )一个函数由两部分组成 函数的首部:即函数的第一行,包括函数名、函数类型、函数属性、函数参数名、参数 类型例: int max ( int x , int y )一个函数名后面必须跟一对圆括号,括号内写函数的参数名及其类型。函数可以没有参数,女口 main ()。 函数体:即函数首部下面的花括号内的部分。如果一个函数内有多个花括号,则最外层 的一对花括号为函数体的范围。函数体一般包括:声明
2、部分、执行部分2、运行C程序的步骤及每个步骤生成文件的类型及特点( P7)3、第二章算法1、算法的定义一个程序应包括数据结构即对数据的描述;算法也就是操作步骤。计算机算法可分为两大类:数值运算算法和非数值运算算法。2、算法的特性(P19)1. 有穷性;2. 确定性;3. 有零个或多个输入;4. 有一个或多个输出;5. 有效性。3、描述算法的常用方法(P20-33)1. 自然语言;2. 用流程图表示算法。3. N S 图4. 计算机语言5. 伪代码4、C程序算法的3种基本结构及其共同特点(P24-25)三种基本结构:1.顺序结构:最基本;2.选择结构:又称选取结构或分支结构;3.循环结构:又称重
3、复结构; 当(while )型循环;直到(until )型循环。共同特点:1. 只有一个入口;2. 只有一个出口;3. 结构内的每一部分都有机会被执行到;4. 结构内不存在“死循环”。5、结构化程序设计的设计原则(P34)1. 自顶向下;2. 逐步细化;3. 模块化设计;4. 结构化编码。第三章数据类型、运算符与表达式1、 C语言的基本数据类型和构造数据类型(P37)rf整型詡型浮点型(郸胃度型基本类型厅用土 I双精度型(数组类型枚举类型结构体类型类型所占字节int2long4float4double8char1有常量和变量区分为整这种常量称(共用体类型构造类型指针类型、空类型在程序中对用到所
4、有数据都必须制定其数据类型。数据量之分,它们分别属于以上这些类型。2、字面常量和符号常量(P37-38)在程序运行过程中,其值不能被改变的量称为常量,常 型常量和实型常量,常量一般从其字面形式即可判别, 为字面常量或者直接常量。用一个标识符代表一个常量的符号,称为符号常量,即以标识符形式出现的常量(常量的 表示用大写字母,变量的表示用小写字母),符号常量与变量不同,符号常量的值在其作用域内部能改变,也不能再被赋值,如果再用赋值语句给符号常量赋值是错误的。使用符号 常量的好处:1.含义清楚2.在需要改变一个常量时能做到“一改全改”3、标识符的命名规则(P39-40)C语言规定标识符只能有字母、数
5、字和下划线3中字符组成,且第一个字符必须为字母或下 划线,合法的标识符可以作为变量名。编译系统将大写字母和小写字母认为是两个不同的 字符。变量名的长度最好不要超过8个字符。在C语言中,要求对所有用到的变量做墙纸定义,也就是“先定义,后使用”,1.凡未被事先定义的,系统不把它认作变量名,这就能保证程序中变量名使用得正确。2.每一个变量被指定为一个确定类型,在编译时就能为其分配响应的存储单元。3.指定每一变量数以一个类型,这就便于在编译时据此检查在程序中要求对该变量进行的运算是否合法。例a%b是“求余”得到 a/b的余数4、整型常量的3种表示方式、整型变量的分类及其定义方式、整型常量的类型(P41
6、-44)整型常量即整常数的 3种表示方式:1. 十进制整数;2. 八进制整数(以0开头);3. 十六进制整数(以 Ox开头)。2进制 用两个阿拉伯数字:0、1;8进制用八个阿拉伯数字:0、1、2、3、4、5、6、7;10进制用十个阿拉伯数字:0到9;16进制09 然后用 A,B,D,E,F 表示 10, 11 , 12, 13, 14, 15整型变量的分类:整型变量的基本类型符为int ,根据数值的范围将变量定义为基本整型int、短整型short int/short、长整型long int/long在实际应用中,变量的值常常是正的,为充分利用变量的值的范围,可以将变量定义为“无符号/unsig
7、ned ”类型,以指定是“无符号数”,或者为“有符号/signed ”。如果前无符号,默认为有符号(signed) 归纳起来,可以用一下六种整形变量:1. 有符号基本整型signedint2. 无符号基本整型 un sig ned int3. 有符号短整型signedshortint4. 无符号短整型 un sig ned shorti nt5. 有符号长整型signedlongint6. 无符号长整型 un sig ned Ion gi nt整型常量的类型:1. 一个整数,如果其值在-327682147483647范围内,则认为它是int型,它可以赋值给int型和long int 型变量2.
8、 一个整数,如果其值超过了上述范围,而在-21474836482147483647范围内,则认为它是长整型,可以将它复制给一个long int 型变量3. 一个整常量后面加一个字母 u或U,可以认为是 unsigned int 型,如123456u4. 在一个整常量后面加一个字母I或L,则认为是long int型常量,如123l、123L5、 浮点型常量的2种表示方式、浮点变量的分类及其定义方式、浮点常量的类型(P45-47) 浮点型常量的2种表示方法:浮点数就是实数, 有两种形式1.十进制小数形式。(由数字和小数点组成,必须有小数点)2.指数形式。如123e3或123E3代表123 X j
9、(审:注意字母e/E之前必须有数字,且 e后面的指数必须为整数,一个浮点数可有多种指数表示 方法浮点变量的分类:1. 单精度(float 型):有效数字672. 双精度(double型):有效数字158163. 长双精度型(long double 型):有效数字1819浮点变量的定义方式:float x , y;类似浮点常量的类型:如果在数的后面加字母f或F (如1.65f ),编译系统会把它们按单精度处理。一个浮点型常量可以赋给一个float 型、double型或long double 型变量,根据变量类型截取实型常量中相应的有效位数字。例如:Float a;A=111111.111;由于f
10、olat型变量只能接受 7位有效数字,因此最后两位小数不起作用。如果a改为double型,则能全部接受上述9位数字,并储存在变量a中。6、字符常量的2种形式、字符变量、字符串常量(P48-52 )字符常量的2种形式:1. C语言的字符常量是用单撇号括起来的一个字符。如a2. 常用的以“ ”开头的特殊字符如下字符形 式含义Ascii 代码n换行10t水平指标(跳到下一个tab位置)9b退格,将当前位置移到前一列8r回车,将当前位置移到本行开 头13f换页,将当前位置移到夏夜开 头12代表一个反斜杠字符“”92代表一个单引号字符39代表一个双引号字符34ddd1到3位八进制数所代表的字 符xhh1
11、到2位十六进制数所代表的 字符字符变量:字符变量用来存放字符常量,它只能放一个字符,不能存放字符串例 char cl , c2 ; c1= a ;c2= b一个字符变量在内存中占一个字节。小写字母的 ASCII码比它的大写字母 ASCII码大32,小大变为大小7、 变量初始化的时间(P53)C语言允许在定义变量的同时使变量初始化。 (int a=3 ; float f=3.56; char c= a)也可以使被定义的变量的一部分赋初值(int a , b, c=5;)如果对几个变量赋予同一个初始值,应写成:int a=3,b=3,c=3;不能写成int a=b=c=3;初始化不是在编译阶段完成
12、的,而是在程序运行时执行本函数时赋初值的,相当于有一个 复制语句。(int a=3 ;)8、 各类型数据间的混合运算(P54) 整型、浮点型、字符型数据间可以混合运算floatdbubl电TTTint J9、 C语言的运算符及其优先级和结合性(P55)特殊%模运算符或称求余运算符,两侧均应为整型数据,且两个整数相除的结果为整数,如5%3为1,舍去小数部分算术运算符的结合方向为自左至右或左结合性,并且先乘除后加 减char short10、强制类型转换(P56)(double ) a; (int ) (x+y);11、 自增、自减运算(P57)i+ 或 +i1. 自增自减运算符只能用于变量,不能
13、用于常量或表达式。例+ (i-1 )为错2. +和一的结合方向是自右至左,例-i+合法,先输出-i再加一,(-i ) +不合法例:i=3 ; a=i+;b=i+;c=i+;d=a+b+c;最终输出 d=12.3. i+j 相当于(i+ ) +j,尽可能多的自左至右12、赋值运算符、复合赋值运算符、赋值表达式(P59-64)赋值运算符就是“=”1. 将浮点型数据(单双精度)赋给整型变量时,舍弃浮点数的小数部分2. 将整型数据赋给单双精度时,数值不变,但以浮点数形式存储到变量中,如将23赋值给float 就得到 23.000003. 将一个double型数据赋给float变量时,截取其前面7位有效
14、数字,存放到float变量中。例:float f ; double d=123.456789e100; f=d ;就出现溢出错误将一个float型数据赋给double变量时候,数值不变,有效位数扩展到16位,在内存中以8个字节存储4. 字符型数据赋给整型变量5.int、short、long型数据赋给 char变量例如 int i =289; char c= a; c=i ;6. 将带有逗号的整型数据int赋给long型变量时,啊哟进行符号扩展,将整型数据16位送到long型低16位中,如果int型数为正值,则long型变量的高16位补零;如果int 型变量为负值(符号位为1),则Io ng型变
15、量的高16位补1,以保持数值不变,反之如果将一个long型数据赋给一个int型变量,值将ong型数据中低16位原封不动地送到整型 变量(截断)7. unsignedint型数据赋给long int型变量时,不存在符号扩展问题8. 将非unsigned型数据赋给长度相同的unsigned型变量,也是原样赋值复合赋值运算符:a+=3 等价于a=a+3; a+=b+3等价于a+=( b+3)9. 赋值表达式一般形式 变量赋值运算符 表达式赋值运算符左边的叫左值,右边的叫右值,凡是左值都可以作为右值 赋值表达式作为左值时应加括号赋值运算符按照“自右至左”的结合顺序(a=3*5)=4*3先执行括号内能的
16、运算,将15赋给a,然后执行4*3的运算,得12,再把12赋给a,故整个表达式的值为12赋值表达式也可以包含复合的赋值运算符a+=a-=a*a先进行右边赋值表达式的计算,相当于a=a-a*a将a初值带入计算a,再进行左边赋值表达式的计算13、逗号运算符及其优先级、逗号表达式逗号表达式一般形式表达式1,表达式2赋值运算符的级别高于逗号运算符a=3*5,a*4 a的值为15,表达式的值为 60x=(a=3,6*3)赋值表达式,将逗号表达式的值赋给x,x的值等于18x=a=3,6*3逗号表达式,x的值为3,整个逗号表达式的值为18第四章顺序结构程序设计1、C语句的分类(P69-71)1、控制语句9种
17、If else /for /while /do while/continue/break/switch/goto/retur n2、函数调用语句。函数调用语句由一个函数调用加一个分号构成printf(“ 456123 ”3、表达式语句。表达式语句由一个表达式加一个分号构成,a=34、空语句5、复合语句2、赋值语句(P71)If (a=b) 0)t=a;先将b的值赋给a,如果a大于0,贝U t=a3、putchar() 、getchar()函数(P73-74)putchar函数(字符输出函数)作用是向终端输出一个字符。其一般形式为putchar (c)putchar函数可以在屏幕上输出字符,也可
18、以输出控制字符,如putchar( n )作用是输出一个换行符,使输出的当前位置移到下一行的开头getchar函数(字符输入函数)的作用是从终端输入一个字符,其一般形式为getchar ()例如char c ; c=getchar();putchar(c);此时屏幕上将输出 c的输入值4、printf() 、scanf()函数及其对应的格式控制符(P74-86)printf 格式输出函数,作用是向终端输出若干个任意类型的数据一般格式为printf(格式控制”,输出表列)例 printf “ %d %cn ” i , c)格式控制作用:1. 格式说明(%.):将输出的数据转换为指定的格式输出2.
19、 普通字符。按原样输出格式控制中的普通字符按原样输出例 printf (“ %d %d”,a, b)printf “a=%d b=%d”,a, b)在第二个函数中双引号内的字符,除了两个d以外,其他的普通字符按原样输出,如果a,b的值分别为3, 4,则输出为a=3 b=4中间有空格3. 格式字符: d格式符。d按十进制整数数据实际长度输出;m(指定宽度(位数)m,如果数据位数小于m,则左端补空格;%ld长整型数据 o格式符。以八进制整数形式输出 x格式符。以十六进制数形式输出 u格式符。以十进制整数形式输出无符号数 c格式符。用来输出一个字符,一个整数,只要它的值在0255之间,也可以用 %c
20、使之按字符形式输出,在输出前,系统会将该整数作为 ASCII码转换成相应的字符; 反之,一个字符数据也可以用整数形式输出。 s格式符。用来输出一个字符串。%s %ms输出的字符串占 m列,如果字符串本身长度大于m,贝U突破m限制,将字符串全部输出,如果小于m,则左补空格;%-ms如果串长小于 m则在m列范围内,字符串向左靠,右补空格;%m.ns输出m列,但只取字符串左端 n个字符。这n个字符输出在 m列右侧,左补空格;%-m.ns ,取n个字符输出在 m列范围的左侧,右补空格,如果nm,则m自动取n值,即保证n个字符正常输出 f格式符。用来输出实数(包括单双精度),以小数形式输出。f,不指定字
21、段宽度,使整数部分全部输出,并输出6位小数。但注意,在输出的数字中并非全部数字都是有效数字,单精度实数的有效数字一般为7位;%m.nf,指定输出的数据共占 m列,其中有n位小数。如果数值长度小于 m,则左端补空格; %-m.nf与%m.nf基本 相同,只是使输出的数值向左端靠,右端补空格。 e格式符。以指数形式输出实数 g格式符。用来输出实数,根据数值的大小,自动选f格式或者e格式,且不输出无意义的零。P80格式字符说明d,i以带符号的十进制形式输出整数O以八进制无符号形式输出整数X,x以十六进制无符号形式输出整数,用x则百偶是输出十六进制数的af时以小写形式输出。用 X时,则以大写字母输出u
22、以无符号十进制形式输出整数c以字符形式输出,只输出一个字符s输出字符创f以小数形式输出单双精度数,隐含输出7位小数e,E以指数形式输出是说,用e时指数以e表示,用E时指数以E表示g,G选用%f或6格式中输出宽度较短的一种格式,不输出无意义的0.用G时,若以指数形式输出,则指数以大写表示字符说明l用于长整型整数,可加载个师傅d,o,x,u前面m数据最小宽度n对实数,表示输出n位小数,对字符串,表示截取的字符个数-输出的数字或字符在域内向左靠注意:除了 X,E,G外,其他格式字符必须用小写字母;可以在格式控制字符串内包含转 义字符;格式符之间可以加入修饰符;用连续两个来输出%seanf (格式控制
23、,地址表列)seanf “ d%d%d ,&a,&b,&c )&为地址运算符,&a指a在内存中的地址。1. 用d%d%输入数据时不能用逗号做两个数据间的分隔符可用空格如果4和4之间有n个空格,则输入时对应的位置应该有多于n个空格来分隔总之,%d与 %d之间有什么简单符号,输入信息时候就要将这些符号加上,或者格式控制里 是a=%d则输入数据时候也得输入玄=某个数据2. 用c格式输入字符时候,空格字符和转义字符都作为有效字符输入例如:scanf “ %c%c%c,&c1,&c2,&c3 );若输入a空格b空格c贝U c1为a,c2为空格, c3为b,正确的输入法为abc 字符间没有空格3. 在输入
24、数据时候,遇到以下情况时,认为该数据结束遇空格,或按回车,或跳格键; 指定宽度结束,如 %3d遇非法输入第五章选择结构程序设计1、关系运算符及其优先级和结合性、关系表达式(P91-92 )优先级:等不等于低于 大小等于;算术运算符 关系运算符 赋值运算符理解:关系表达式,表达式的值(1为真,0为假)例:设a=3, b=2, c=1有d=ab贝U d的值为1 ; f=abc 贝U f的值为0.2、逻辑运算符及其优先级和结合性、逻辑表达式及其求值过程的特点(P91-92)逻辑运算符与(&)或(| )非(!)优先级: 非(!)7与(& 或(| )谐音记为“飞鱼火”; 逻辑运算符中的“ &和“”低于关
25、系运算符,“!”高于算术运算符逻辑表达式:C语言判断一个量是否为真时,以0代表假,以非0代表真,即将一个非 0的数值认作为真。若a=4贝,a的值为0; 4&0|2的值为1求值过程特点:略3、if语句的三种结构(P95-96)第一种:if (表达式)语句例:if (xy) frintf( “ %d ,x);第二种:if (表达式)语句1else语句2例:if(xy) printf(“ %d ,x); else printf(“ d ,y)第三种:if (表达式1)语句1 else if(表达式2)语句2.例:if (number500) cost=0.15;else if(number300)c
26、ost=0.10;else cost=0;特点:1.if (3) printf (“ %d , a ) ;2.第二,三种形式的if语句中,在每个else前 面有一个分号,整个语句结束处有一个分号。3.当if和else后面有多个操作语句时,用将几个语句括起来称为一个符合语句。注意,花括号外面不需要再加分号,因为内是一个完整的复合语句4、if语句的嵌套及if与else的配对关系(P99)略5、条件运算符及其优先级和结合性及其求值过程(P102-104 )例子:max= (ab) ?a:b;“(ab) ?a:b ”是一个条件表达式,如果(ab)为真,则条件表达式取值a;否则取值b。条件运算符优先级别
27、低于关系运算符和算术运算符。故上式中括号可以省略条件运算符的结合方向为“自右至左”ab?a:cd?c:d 相当于 ab?a: (cd?c:d)例子:ab?(a=100):(b=100) ab?printf(“ %d ,a):printf(“d ,b)6、switch语句及其执行过程、break语句的作用(P102-104)switch(grade)case A :printf( “ 85100n ”); case B :printf(“ 084n ” );defaule:printf(“errorn ” );说明:case只起语句标识作用,当语句执行时,此case 一旦执行其后面的语句将就 此
28、开始全部执行下去,不再进行判断,为使在执行此case后跳出结构,用一个 break 语来达到刺目的。故需在以上语句的每一个 case语句分号后面加(break ;)第六章循环控制1、while 语句(P114)while (表达式)语句;特点:先判断表达式,后执行语句。例子:while (i=100 ) sum=sum+l;i+;2、do-while 语句(P115)do循环体语句 while(表达式);特点:先执行循环体,后判断循环条件是否成立例子:dosum=sum+l;i+;while(i=100);printf(“dn”,a);3、for 语句(P118)for(表达式1;表达式2;表
29、达式3)语句for (循环变量赋初值;循环条件;循环变量增值)for ( i=1;i=100;i+) sum=sum+i;说明:1.表达式1可以省略(但分号不可以省略),此时应在for语句之前给循环变量赋初 值;2.如果表达式2省略,循环无终止地进行下去;3.表达式3也可以省略,另找路径保证循环正常结束; 4.可以省略表达式 1和表达式 3而使只有表达式 2循环条件。如 for(;iy?x:y;return(z);类型标识符函数名(形式参数表列)3、函数的参数、实参和形参之间的数值传递、函数值(P158-161)4、函数的调用方式、函数的声明、函数原型(P161-166)5、函数的嵌套调用(P
30、167)6、 函数的递归调用及应用(P171)7、 数组作为函数的参数、实参数组和形参数组之间的关系(P177)8、选择法排序的原理(P181)9、局部变量、全局变量(P184-185)在函数内定义的变量是局部变量,在函数之外定义的变量称为外部变量,外部变量是全局 变量也称全程变量。全局变量可以为本文件中其他函数所共用。它的有效范围为从定义变 量的位置开始到本源文件结束。例如int p=1,q=5; float f1(i nt a) int b,c;char f2(i ntx,i nty)int x,i nt y10、变量的分类及其存储类别(P188)11、extern、static 的应用(
31、P193-196)12、 内部函数和外部函数(P199)第九章预处理命令1、 预处理命令的处理时间(P204)2、宏定义、不带参宏、带参宏、格式宏、宏的有效范围控制(P204-211)3、文件包含、两种文件包含形式(P211-214)第十章指针1、 变量的地址和变量的值(P221)一个变量的地址称为该变量的“指针”。如果有一个变量专门来存放另一变量的地址(指针),则它称为“指针变量”。2、指针和指针变量(P221)3、 指针变量的定义方式、引用方式(P222)4、 指针变量作为函数参数(利用函数来改变实参的值)、实参和形参的值传递(P225)5、 指向数组元素的指针(P229)6、 一维数组元
32、素和地址的表示方法、利用指针处理数组元素(P229)7、 数组和指针作为函数参数时如何利用指针处理数组元素(P235)8、 指向二维数组的指针的定义方式、二维数组元素和地址的表示方法(P242)9、指向字符串的指针、利用它来处理字符串1、goto循环例 6.1 求 1+2+3+100# in elude void mai n()in t i=1,sum=0;loop: if(i=100)sum=sum+i;i+;goto loop;prin tf(%d,sum);2、while 循环例6.2#i nclude void mai n()int i=1,sum=0; while(i=100) sum=sum+i;巧ntf(I 口If PT/%d ,sum);while循环#in cludevoid mai n()in t i=1,sum=0;dosum=sum+i;i+;while (i=100);printf(“ d ,sum);4、 for(循环变量赋初值;循
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025清包工装修合同范本
- 2025年度产品采购合同范本
- 2025年农业生产设备租赁合同范本
- 约定离婚赔偿协议
- 2025合作合同 电子产品收益分配协议书
- 2025灯光设备安装合同样本
- 不尽赡养义务协议书
- 西安邮电大学《工程招标投标与合同管理》2023-2024学年第二学期期末试卷
- 中国科学院大学《现代土木工程理论新进展》2023-2024学年第二学期期末试卷
- 四川文化传媒职业学院《神奇的普洱茶》2023-2024学年第一学期期末试卷
- 纵隔肿瘤护理查房
- 眼镜店销售培训课件
- 中小学学校落实中央八项规定自查报告
- 宜宾市属国有企业人力资源中心宜宾临港投资建设集团有限公司下属子公司2025年第一批项目制员工公开招聘笔试参考题库附带答案详解
- 2025年山东鲁泰控股集团有限公司下属驻陕西煤矿企业招聘(150人)笔试参考题库附带答案详解
- 2025届上海市浦东新区高三二模英语试卷(含答案)
- 2024-2025学年高一政治统编版下学期期中考试测试卷B卷(含解析)
- 内蒙古自治区呼和浩特市2025届高三第一次模拟考试物理答案
- 仓库管理奖惩制度
- 中级银行管理-2025中级银行从业资格考试《银行管理》点睛提分卷1
- 乳腺癌诊治指南与规范(2024年版)解读
评论
0/150
提交评论