C程序设计重点总结

上传人:无*** 文档编号:131661264 上传时间:2022-08-07 格式:DOC 页数:6 大小:95.50KB
收藏 版权申诉 举报 下载
C程序设计重点总结_第1页
第1页 / 共6页
C程序设计重点总结_第2页
第2页 / 共6页
C程序设计重点总结_第3页
第3页 / 共6页
资源描述:

《C程序设计重点总结》由会员分享,可在线阅读,更多相关《C程序设计重点总结(6页珍藏版)》请在装配图网上搜索。

1、C语言最后加粗一下重点!第二章算法1. 计算计算法分两类:数值运算算法:求数值解非数值运算算法:排序、检索、管理2. 算法特性:有穷性、确定性、零或多输入、一或多输出、有效性3. 算法的三种基本结构:顺序结构选择结构循环结构(当型、直到型)第三章顺序结构常量和变量1.常量:整型常量实型常量:小数形式指数形式:12.34*103=12.34e3字符常量:普通字符:用括起来转义字符:开头(a警告b退格nt空出一段距离oxh)字符串常量:用括起来符号常量:#definePI3.14(大写,行末无分号)2. 变量:先定义,后使用3. 常变量:constinta=3;(取代符号常量)4. 标识符(可作为

2、变量名):只能由字母、数字、下划线组成且不能数字打头大小写是不同字符数据类型整型类型:基本整int短整shortint长整longint双长整longlongint字符char布尔bool浮点类型:单精度浮点float双精度浮点double复数浮点枚举类型:enum空类型:void数组函数指针*结构体struct共用体union字节数(有效数字)int:2、4short:2long:4longlong:8char:1float:4(6)double:8(15)longdouble:8(15)、16(19)规范化指数形式:3.141590.314159e001运算符和表达式1. 实数相除得双精度

3、实数整数相除得整数(商向零取整)2自增自减运算符(只用于变量):+i、-i先加减再使用i+/i-先使用再加减3. 算术表达式自左向右结合,先乘除后加减4. 不同类型数据混合运算:float和doubledoubleint和float/doubledoublechar和intASCII和int5. 强制类型转换:(double)(x+y)将x+y的值转换成double型6. C运算符:等于=不等于!=与&或|非!赋值=下标C语句1. 分类控制语句:如continue(结束本次循环)break(中止执行switch或循环)switch(多分支选择)函数调用语句:printf(.);表达式语句:句末

4、有分号空语句:;(作流程转向点)复合语句:用括起来,语句句末写分号用数学公式开头加#include2. 赋值语句:复合赋值运算符:x+=y等价于x=x+yx*=y等价于x=x*yx%=y等价于x=x%y赋值表达式:a=b、a+b这种表达式不能作为左值a=b=5自右而左:b=5;a=b;数据的输入输出1. C语言本身不提供输入输出语句,以下都是函数:putchar输出字符getchar输入字符printf格式输出scanf格式输入puts输出字符串gets输入字符串2. 输入输出头文件:#include3. printf(格式控制,输出表列):格式控制=%格式字符+普通字符输出表列可以是常量、变

5、量、表达式4. scanf(格式控制,地址表列):不能忘“&”注意:逗号对逗号,空格对空格%c中,空格和转义字符都作为有效字符输入数值数据时遇非法字符认为数据结束5. 格式字符:%d有符号的十进制整数%f小数形式的实数(7.2f表示共7位,小数2位)(-7.2f表示向左对齐)双精度%lf%c一个字符%s字符串%e%E指数形式(printf(%e,123.456)1.23456e+002)%o八进制整数(补码)%x十六进制整数%u无符号十进制整数%g%G系统自动选择变成f或。输出“%”用连续两个“%”表示6. putchar()输出一个字符:putchar(66)输出“B”putchar(n)换

6、行7. getchar(c)输入一个字符第四章选择结构1.if:两分支选择switch:多分支选择2. 将a和b的值互换:t=a;a=b;b=t;3. 优先级:!算术运算符关系运算符&|赋值运算符关系运算符优先级:高:=低:=!=逻辑运算符优先级:!&|4. 关系表达式:“1”代表真,“0”代表假逻辑表达式:非0代表真,0代表假a&b&c只有a为真才向后算a|b|c只有a为假才向后算5. 逻辑型变量:头文件#include如a=score=606. 条件表达式:max(ab)?a:b;7. 选择结构嵌套:else总与上面最近的未配对if配对8. 多分支选择结构:(多个case,最多一个defa

7、ult)switch(表达式)case常量:语句;break;default:语句;多个case共用一组语句caseA:caseB:caseC:printf(60n);break;第五章循环结构三种循环1. while(表达式)语句;2. do语句;while(表达式)3. for(初值;循环条件;循环变量增值):改写成while:初值;while(循环条件)语句;循环变量增值;for里3项都可以省略,第1、3项可含逗号,第2项可以是关系/逻辑/数值/字符表达式逗号表达式内,整个逗号表达式的值=最右边表达式的值跳出、结束循环break:终止整个循环,只用于switch和3种循环语句contin

8、ue:结束本次循环如果是双重循环,内循环里有break,则终止内循环而不是整个循环第六章数组1. 一维数组:inta10;含a0a9十个元素初始化:a10=0,1,234,5,6,7,8,9沖括号里可以不写,大括号里不写的得0起泡法排序:n个数n-1趟比较,第j趟比较n-j次2. 二维数组:floata34;含a00a23十二个元素初始化:3行4列inta34=1,2,3,4,5,6,7,8,9,10,11,12;第一维中括号可以不写,大括号里不写的得0打擂台算法:先max=a00,剩下的挨个跟a00比,赢了就赋给max3. 字符数组:chara10;含a0a9十个元素初始化:chara=I,

9、a,m,h,a,p,p,y;chara23=#,#,#,#,#,#;chara=Iamhappy4. 0作为字符串结束的标志5.scanf函数输入项如果是字符数组名不加&:scanf(%s,a);6输出字符串:puts(字符数组)输入字符串:gets(字符数组)字符串连接:strcat(字符数组1,字符数组2)字符串复制:strcpy(字符数组1,字符串2)将2复制到1中strncpy(str1,str2,2)将2的前2个字符复制到1中7. 字符串比较:strcmp(字符串1,字符串2)if(strcmp(s1,s2)0)printf(yes);8测字符串长度:strlen(字符数组)9转换为

10、小写:strlwr(字符串)转换为大写:strupr(字符串)第七章函数1. 定义有参函数:三处类型名和returnz不能少2. 形参:定义函数时括号中的变量实参:主调函数调用时括号中的参数(常量、变量或表达式)3. 数据传递(单向传递,值传递):实参的值给形参,函数中returnz把z的值作为函数值返回主函数赋给相应变量4. 函数调用函数类型名和里面return表达式的类型名一致(函数类型决定返回值类型)不需要返回值的函数里边不写return,类型名为void(空类型)调用结束时形参单元被释放,实参单元仍保留原值。形参和实参是两个不同存储单元主函数的声明和函数的定义第一行(函数原型)一样,再

11、加分号声明中的形参名可以不写:floatadd(float,float)函数原型专业写法:voidprint(intnum,charsex,floatscore);声明也可以在intmain()之前5. 嵌套调用递推法:主函数声明a函数,a函数定义中声明b函数,定义b函数改进:b函数只用一个return语句6. 递归调用(调用函数本身):分为“回溯”和“递推”两个过程,必须具有一个结束递归的条件。7. 数组名作参数数组元素作实参,向形参传递元素的值数组名作实参,想形参传递元素的地址二维数组名作参数,函数定义里用两个for控制8. 局部变量和全局变量局部变量:在函数内定义,比如形参全局变量(外部

12、变量):在函数外定义,范围直到本源文件结束不同函数中可以使用同名变量习惯:全局变量首字母大写若同一源文件中全局变量和局部变量重名,则在局部变量作用范围内全局变量被屏蔽9. 变量的存储方式和生存期第八章指针概念1. “指针”就是地址。指针变量是存放地址的变量2. 直接访问:按变量名访问间接访问:将变量a的地址存放在变量b中,通过b访问a3. *a表示a指向的对象,a叫指针变量,a的值是地址(指针)4. 定义指针变量必须指定基类型:int*a,*b;(int叫基类型)5. 初始化时:int*p1=&a,*p2=&b;赋地址时:p1=&a;p2=&b;6. 一个变量的指针的含义包含两个方面:地址:以

13、存储单元编号表示数据类型:指向存储单元7不能写*point_1=100;等号右边应该写变量,不能写数8. 引用指针变量:p=&a;定义时:swap(*p1,*p2)调用时:swap(p1,p2)9. 交换值:inttemp;temp=*p1;*p1=*p2;*p2=temp;10. p=&a0;p=a;表示a数组首元素的地址赋给p数组指针1. 指针指向数组元素时可以:加减整数、自加自减同一数组中的两元素pl、p2可以p1-p22. 自加自减*p+=*(p+):先引用p的值,再使p自增1*(+p):先p+1,再取*p+(*p):p所指向的元素值加13. 一维:fun(intarr,intn)与fun(int*arr,intn)等价ai与*(a+i)等价4. 多维:*(*(a+i)+j)=*(ai+j),都是aij的值a(&a0)、a+1(&a1)表示第0行、第1行*a、*(a+1)表示a00(a0)、a10(a1)a+i、ai、*(a+i)、&ai、&ai0都代表同一地址字符串指针1. char*a=blablabla;printf(%s,a);没问题2. 字符数组名和字符指针变量可以做形参和实参3. 不能对数组名赋值4. 字符指针变量只分配一个存储单元

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!