C语言知识点整理



《C语言知识点整理》由会员分享,可在线阅读,更多相关《C语言知识点整理(22页珍藏版)》请在装配图网上搜索。
1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,计算机科学与技术系,09,级学生工作委员会,学习部,*,C,语言的标识符,标识符的作用 表示在C语言中表示变量、常量、数据类型和函数。,标识符的命名规那么:,只能由AZ、az、09、_(下划线)组成;,第一个字符不能是数字;,C语言中的关键字不能作为用户标识符.,例:判断以下标识符的合法性,sum Sum day Date 3days,student_name#33 lotus_1_2_3,char ab _above$123,2024/11/15,1,计算机科学与技术系,09,级学生工作委员会,学习部,C
2、,语言中的关键字,auto,break,case,char,const,continue,default,do,double,else,enum,extern,float,for,goto,if,int,long,register,return,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile,while,2024/11/15,2,计算机科学与技术系,09,级学生工作委员会,学习部,C,数,据,类,型,基本类型,构造类型,指针类型,空类型,void,定义类型,typedef,字符类型,ch
3、ar,枚举类型,enum,整 型,实型,单精度型,float,双精度型,double,数组,结构体,struct,共用体,union,短整型,short,长整型,long,整型,int,2024/11/15,3,计算机科学与技术系,09,级学生工作委员会,学习部,格式输出函数,-printf,格式:printf(“格式控制串,输出列表,输出列表:要输出的变量的列表,用逗号分隔各个变量,格式控制串中最重要的就是格式修饰符。对应不同的数据类型,应该采用不同的格式修饰符,见下表,数据类型,关键字,修饰符,输出示例,整型,int,%d,printf(,“,%d,”,a);printf(,“,%d%d%
4、d,”,x,y,z);,双精度浮点型,double,%lf,printf(,“,%lf,”,m);printf(,“,%lf%lf,”,),cm,cn);,字符型,char,%c,printf(,“,%c,”,ch);printf(,“,%c%c%c%c,”,c1,c2,c3,c4);,长整型,long,%ld,printf(,“,%ld,”,b);printf(,“,%ld%ld,”,d1,k2);,单精度浮点型,float,%f,printf(,“,%f,”,f1);printf(,“,%f%f%f,”,f1,f2,f3);,不同数据类型变量的混合输出,printf(,“,%f%c%d%l
5、d%lf,”,f3,ch,x,k2,m);,2024/11/15,4,计算机科学与技术系,09,级学生工作委员会,学习部,运算符和表达式,C,运,算,符,算术运算符:(,+-*/%+-,),关系运算符:(,=!=,),逻辑运算符:(!,&|,),位运算符 :(,|&,),赋值运算符:(,=,及其扩展),条件运算符:(,?:,),逗号运算符:(,),指针运算符:(*,&,),求字节数 :(,sizeof,),强制类型转换:(类型),分量运算符:(,.-,),下标运算符:(,),其它 :(,()-,),2024/11/15,5,计算机科学与技术系,09,级学生工作委员会,学习部,转换规那么,字符与
6、整数间的转换:,字符整数:高位填充零或符号扩充,可能产生负数。,整数字符:取低八位,可能出错。,整数之间的转换:,较短整数较长整数:符号位扩充,转换平安。,较长整数较短整数:去掉高位,可能出错。,浮点数与整数之间的转换,浮点数整数:截去小数局部不四舍五入,转换成long型,再转换成需要的整型,可能出错。,整数浮点数:先将整数转换成long型,再转换成浮点型,转换平安。,2024/11/15,6,计算机科学与技术系,09,级学生工作委员会,学习部,if()else,switch,for(),while(),dowhile(),分支,循环,如 total=total+limit;,a=3;,fun
7、c();,printf(“Hello,world!n);,2024/11/15,7,计算机科学与技术系,09,级学生工作委员会,学习部,if,语句,if-else,形式的,if,语句,if 表达式e,语句1;,else,语句2;,程序执行流程:,假设表达式e的值为真,,执行语句1,否那么,执行语句2,if,形式的,if,语句,if 表达式,语句1;,if 表达式,语句1;,else,;,程序执行流程:,假设表达式e的值为真,,执行语句1,2024/11/15,8,计算机科学与技术系,09,级学生工作委员会,学习部,if,语句嵌套,:,一般形式:,if(expr1),if(expr2)state
8、ment1,else statement2,else,if(expr3)statement3,else statement4,内嵌,if,内嵌,if,if(expr1),if(expr2),statement1,else,statement2,内嵌,if,if(expr1),if(expr2),statement1,else,statement3,内嵌,if,if(expr1),statement1,else,if(expr3),statement3,else,statement4,内嵌,if,if else 配对原那么:缺省 时,else总是和它上面离它最近的未配对的if配对,2024/11
9、/15,9,计算机科学与技术系,09,级学生工作委员会,学习部,当有多个分支选择时,可采用,if-else-if,语句,其一般形式为,:,if-else if,语句的语法,if(,表达式,1),语句,1,;,else if(,表达式,2),语句,2,;,else if(,表达式,3),语句,3,;,else if(,表达式,m),语句,m,;,else,语句,n,2024/11/15,10,计算机科学与技术系,09,级学生工作委员会,学习部,switch,语句,2024/11/15,11,计算机科学与技术系,09,级学生工作委员会,学习部,switch语句开关分支语句),switch(,表达式
10、,),case E1:,语句组,1;,break;,case E2:,语句组,2;,break;,.,case En:,语句组,n;,break;,default:,语句组,;,break;,switch,表达式,语句组,2,语句组,n,语句组,.,E 1,E 2,En,default,case,语句组,1,2024/11/15,12,计算机科学与技术系,09,级学生工作委员会,学习部,switch语句的执行,入口:,如果表达式的值与某一个case后边的常量表达式相等,就从这个case开始,依次执行其后边的每条语句,如果所有的case语句都不匹配时,就从default开始,依次执行defaul
11、t后边的每条语句,出口,如执行到break语句,跳出整个switch语句,如没有遇到break语句,那么整个switch的语句执行完毕后跳出switch语句,switch,语句,2024/11/15,13,计算机科学与技术系,09,级学生工作委员会,学习部,说明:,E1,E2,En,是,常量表达式,且值必须互不相同,语句标号作用,必须用,break,跳出,case,后可包含多个可执行语句,且不必加,switch,可嵌套,多个,case,可共用一组执行语句,如:,case A:,case B:,case C:,printf(“score60n);,break;,.,2024/11/15,14,计
12、算机科学与技术系,09,级学生工作委员会,学习部,循环结构,while,语句,while(,表达式,e1),语句,s1;,循环结构的三个要素:,1,、,循环条件:,循环结构中的条件表达式,2,、,循环体,:在每个循环周期均要执行一次的语句序列。,3,、,循环控制变量:,能够决定控制条件是真是假的量,如上例中的变量,i,。,例题,:,求,s=1+2+3+10;,#include,void sumFromOneToTen(),int i,s;/定义循环变量i和累加变量s,i=1;/循环变量赋初始值,s=0;/累加变量根据实际赋初始值,while(i=10)/i从1变到10(即当i=1,0都需要循环
13、),s+=i;/累加,i+;/循环变量改变值,printf(“s=%d,s);,2024/11/15,15,计算机科学与技术系,09,级学生工作委员会,学习部,for,语句,语法:for(起始量;终结量;变化量),语句s1;,语法上要求s1是一条语句,假设有多条语句,必须用 ,使之成为一条复合语句,从而满足语法要求。,for(i=1;i=100;i+),s+=i;/,循环体,switch,语句中的,break,例题,break,语句,功能:结束当前,switch,的执行,转到该,switch,语句的下一条语句执行,循环语句中的,break,功能:跳出该,break,所在的那层循环语句,提前终止
14、当前循环。,continue,语句,求,s=1+2+3+10;,功能:终止本轮循环循环体语句的执行,,对于,while,语句,:,转去判断,while,循环条件,对于,for,语句,:,转去执行表达式,3,,再判断表达式,2,2024/11/15,16,计算机科学与技术系,09,级学生工作委员会,学习部,continue,与,break,#includestdio.h,main(),int i;,for(i=1;i=10;i+),printf(“i=%dn,i);,if(i=3),continue;,printf(“circle%d,i);,printf(over);,#includestdi
15、o.h,main(),int i;,for(i=1;i=10;i+),printf(“i=%dn,i);,if(i=3),break;,printf(over);,2024/11/15,17,计算机科学与技术系,09,级学生工作委员会,学习部,一维数组,定义数组的语法:,int a10;,数据类型说明符 数组名,数组长度,注意:数组的空间分配是静态分配。数组长度只能是常量,,长度不能在程序运行过程中发生变化,。,2024/11/15,18,计算机科学与技术系,09,级学生工作委员会,学习部,一维数组元素的,引用,1.,数组元素的表示:数组名,下标,int a2=1,2,;表示,a0=1,,,a
16、1=2,int a3=1,2;,表示,a0=1,,,a1=2,,,a3=0,2.,下标是整型值,可以是整型常量、整型变量或整型表达式,如:,ai a3+1 a2*i-1,3.,注意:下标不能小于初值个数。当下标大于初值个数时,,int,用,0,补,,char,用,0,补,float,用,0.000000,补,.,2024/11/15,19,计算机科学与技术系,09,级学生工作委员会,学习部,字符数组的输入输出,字符串用%S 字符用%C,Scanf/printf与gets()/puts()用于字符输入/输出时的区别,前 遇到字符串的空格自动结束,常用字符串处理函数:,Strlen(字符数组),计算字符串长度,Strcpy(字符数组1,字符数组2)把2中的复制到1中去,Strcat(字符数组1,字符数组2)把2中的连接到1中去,Strcmp(字符数组1,字符数组2)按ASCALL顺序比较1.2中的字符串,字符数组的表示:,Char s4=u,s,e,r;/=“user;,函数的类型,类型,函数原型举例,(,1,)无返回值无参数函数,void f1();,(,2,)无返回值带参数函数,voi
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。