《自考计算机基础与程序设计03.资料.ppt》由会员分享,可在线阅读,更多相关《自考计算机基础与程序设计03.资料.ppt(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、自考自考计计算机基算机基础础与程序与程序设计设计03.第三章第三章C语言程序言程序设计基基础第一节第一节 介绍基本数据类型、介绍基本数据类型、常量与变量常量与变量第二节第二节 各种类型的各种类型的常量常量第三节第三节 各种类型的各种类型的变量变量第四节第四节 运算符及表达式运算符及表达式第五节第五节 类型转换类型转换数据与运算符数据与运算符2共 26 页 第 3 3 页3-1 介介绍基本数据基本数据类型、常量与型、常量与变量量 构造数据类型 基本数据类型基本数据类型数据类型整型实型字符型数组结构体枚举指针空类型共同体基本数据类型基本数据类型:1)整型)整型:由正负号由正负号,数字组成数字组成
2、例如例如:123,-123 2)实型)实型:正负号正负号,数字数字,小数点组成小数点组成 例如:例如:3.14,-3.14 3)字符型)字符型:Ascll字符集中的一个,字符集中的一个,用一对单引号括起来用一对单引号括起来 例如:例如:a,=b,a=b,a!=b3)关系运算结果关系运算结果:只有两种结果只有两种结果(0和和1)1-“成立成立”,0-“不成立不成立”例如例如:95 2,=,=c5)结合方向结合方向:从左到右从左到右 例如例如:ab=c6)注意注意:区分区分=与与=举例:举例:int a;a=2;与与 a=2的区别的区别 写表达式写表达式:判断判断a是否能被是否能被2整除整除?满足
3、返回满足返回1,否则返回否则返回0 a%2=0数学数学,c语言是语言是=数学数学,c语言是语言是ba!=ba=b (ab)=cab=c 成立成立,结果为结果为 1成立成立,结果为结果为 1不成立不成立,结果为,结果为 0成立,成立,结果为结果为 1与上面与上面等价等价,结果为结果为 1 如何判断数学中的逻辑关系:如何判断数学中的逻辑关系:00a a99?等价于等价于(0=(0=a)=9a)=910 10 10 10 结果恒为结果恒为结果恒为结果恒为1 10=a=9n逻辑运算符与逻辑表达式逻辑运算符与逻辑表达式1)逻辑运算符逻辑运算符&|!与与或或 非非与与:当两个分量同时为当两个分量同时为真真
4、(非非0)时时,结果为结果为1,其余为其余为0 举例举例:5&9,5&0,0&5,0&0或或:当两个分量同时为当两个分量同时为假假(0)时时,结果为结果为0,其余为其余为1 举例:举例:5|9,5|0,0|5,0|0非非:当分量为当分量为假假(0),结果为结果为1;当分量为当分量为真真(非非0),结果为结果为0 举例:举例:!0,!62)逻辑表达式的格式逻辑表达式的格式:!-单单目运算符目运算符 例如例如:!a&和和|-双双目运算符目运算符 例如例如:a&b ,a|b3)关系运算分量关系运算分量 只区分只区分非非0和和0 非非0真真 0-假假 关系运算结果关系运算结果:只有两种结果只有两种结果
5、,1-“真真”,0-“假假”举例举例:上例上例4)优先级优先级:!(高高)&(中中)|(低低)举例:举例:y y|b b&y y|a a 5)结合方向结合方向:!从右到左从右到左 ;&,|从左到右从左到右 举例:举例:a|b|c逻辑运算符运算符 2)2)数学表达式数学表达式数学表达式数学表达式 0 0 0 0 x x x x9 9 9 9 在在在在c c c c语言中语言中语言中语言中如何写?如何写?如何写?如何写?(0 0 0 0=x x x x )&(x x x x=2)?4:1 或者或者 (ab)?(a+1):(a/b)l l功能:功能:功能:功能:如果如果如果如果表达式表达式表达式表达
6、式1 1成立成立成立成立(表达式的值为非(表达式的值为非(表达式的值为非(表达式的值为非0 0)则则则则整个表达式的值整个表达式的值整个表达式的值整个表达式的值取取取取表达式表达式表达式表达式2 2的值;的值;的值;的值;否则否则否则否则,取取取取表达式表达式表达式表达式3 3的值的值的值的值 例:例:max=(ab)?a:b;举例:举例:52?4:1 的值?的值?4求变量a与b的最大值?:唯一的三目运算符条件表达式能根据表达式条件表达式能根据表达式条件表达式能根据表达式条件表达式能根据表达式1 1的值来选择结果的值来选择结果的值来选择结果的值来选择结果n条件运算符与条件表达式条件运算符与条件
7、表达式共 26 页 第 3737 页2-4 简单的的C语言程序介言程序介绍l例例4:/*example4.c*/4:/*example4.c*/int max(int x,int y)int max(int x,int y)int m;int m;if(xy)m=x;if(xy)m=x;else m=y;else m=y;return(m);return(m);main()main()int a,b,maxnum;int a,b,maxnum;scanf(%d,%d,&a,&b);scanf(%d,%d,&a,&b);maxnum=maxnum=max(a,b)max(a,b);printf(
8、maxnum=%dn,maxnum);printf(maxnum=%dn,maxnum);运行结果是运行结果是:2,5maxnum=5输入两个数输入两个数,输出较大的数输出较大的数int max(int x,int y)int m;m=(xy)?x:y;return(m);条件条件运算符运算符l l结合性结合性结合性结合性:从右向左从右向左从右向左从右向左 举例举例:a=1,b=2,c=3,d=4,表达式,表达式ab?a:cb?a:(cb?a:cd?c:dab?a:cd?c:dab?a:cd?c:dab?a:cd?c:d等价于等价于等价于等价于 ab?a:(cd?c:d)ab?a:(cd?c:
9、d)ab?a:(cd?c:d)ab?a:(cd?c:d)运算符运算符间的的优先先级l()()括号括号 改变表达式中的优先级关系改变表达式中的优先级关系l单目运算符单目运算符 +;-;!;-(-(负负)l算术运算符算术运算符 *;/;%+;-l关系运算符关系运算符 ;=;=-在内存占字节少的类型,在内存占字节少的类型,向占字节多的转换向占字节多的转换注意类型间的隐式转换3-5 数据数据类型型转换2 2、强制类型转换强制类型转换 强制强制将表达式值的类型转换为指定类型将表达式值的类型转换为指定类型 (类型名类型名)表达式表达式 类型名是类型名是int,float,double,charint,fl
10、oat,double,char之一之一 例如例如:1)(int)(5.6)+3:1)(int)(5.6)+3 2)int a=5;2)int a=5;(float)a/2 (float)a/2 3)x=1.6,y=2.5;3)x=1.6,y=2.5;(int)x+y与与(int)(x+y)的区别的区别8 /*隐式转换是隐式转换是double,强制为整型强制为整型*/2.5表达式不是单个数据加表达式不是单个数据加()举例举例举例举例:已知:已知:已知:已知:int int int int a=3,b=-4,c=5,x=2.5,y=4.7a=3,b=-4,c=5,x=2.5,y=4.7a=3,b=
11、-4,c=5,x=2.5,y=4.7a=3,b=-4,c=5,x=2.5,y=4.7;int(y)+y int(y)+y int(y)+y int(y)+y (float)(a+b)(float)(a+b)(float)(a+b)(float)(a+b)/2+(int)x%(int)y/2+(int)x%(int)y/2+(int)x%(int)y/2+(int)x%(int)y1.58.7小数部分全部舍掉小数部分全部舍掉,不会四舍五入不会四舍五入3-5 数据数据类型型转换3 3、赋值表达式的类型转换赋值表达式的类型转换 int i;i=2;int i;i=3.1;变量变量=表达式表达式;赋值
12、号赋值号右边右边的类型的类型赋值号赋值号左边左边变量的类型变量的类型 例如:int a;a=3.14;float f;f=4;int d;d=f+1;a=3f=4.0d=5举例举例:三种类型转换三种类型转换 int a,b;求表达式求表达式:(a=3.4)+(b=4.5)+(float)(2)9.5l l实例实例 设设a=5a=5;则则a+=a*=a+aa+=a*=a+a运算后运算后,a=,a=100100 运算运算实例例()括号单目运算符 +;-;!;-(负)算术运算符 *;/;%+;-关系运算符 ;=;=;!=逻辑运算符&|条件运算符?:赋值运算符 =;+=;-=;*=;/=;%=逗号运算
13、符 ,高0 0 5 5 设设int a=6;a/=a+aint a=6;a/=a+a运算后运算后,a=,a=int a=5,b=2;int a=5,b=2;表达式表达式b+=(float)(a+b)/2b+=(float)(a+b)/2设设a=3,b=-4,c=5;+a-c+ba=3,b=-4,c=5;+a-c+b-5-5 共 26 页 第 4545 页第三章第三章C语言程序言程序设计基基础第一节第一节 介绍基本数据类型、介绍基本数据类型、常量与变量常量与变量第二节第二节 各种类型的各种类型的常量常量第三节第三节 各种类型的各种类型的变量变量第四节第四节 运算符及表达式运算符及表达式第五节第五节 数据类型转换数据类型转换总结总结:此课件下载可自行编辑修改,仅供参考!此课件下载可自行编辑修改,仅供参考!感谢您的支持,我们努力做得更好!谢谢感谢您的支持,我们努力做得更好!谢谢