数据类型、运算符与表达式_第1页
数据类型、运算符与表达式_第2页
数据类型、运算符与表达式_第3页
数据类型、运算符与表达式_第4页
数据类型、运算符与表达式_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据类型、运算符与表达式第一页,共七十二页,2022年,8月28日C语言提供的数据结构是以数据类型的形式出现的用指针、结构体还可构成链表、树、栈等复杂的数据结构整型字符型实型(浮点型)枚举类型单精度型双精度型数组类型结构体类型共用体类型基本类型构造类型指针类型空类型(void)数据类型第二页,共七十二页,2022年,8月28日3.2常量与变量3.2.1常量和符号常量常量:在程序执行过程中,数值始终保持不变的量。整型:5,-26,0

实型:3.14,-2.45,2.17e3

字符:‘a’,‘1’,‘A’,‘$’

标识符(符号)例如:#definepi3.14

常量一般从其字面形式即可判别。第三页,共七十二页,2022年,8月28日例3.1

#definePRICE30voidmain(){intnum,total;num=10;total=num*PRICE;printf(“total=%d”,total);}输出:total=300

符号常量:见名知意,程序中一改全改。第四页,共七十二页,2022年,8月28日3.2.2变量变量:在程序执行过程中,其值可以变化的量。1.变量名:由合法标识符组成。2.标识符:字母、数字、下划线序列构成。第一个字符必须是字母或下划线,如:abs,_12,a3c53b,a$e,Wang-13.标识符长度:一般1~8个合法字符。第五页,共七十二页,2022年,8月28日4.大小写字母有区别,如,A,a是两个不同的标识符。5.使用方法:按先声明后使用的原则。6.变量类型能进行有关运算的合法性检查,如a%b,两边必须是整型数据。7.不同类型的变量,占据不同长度的存储单元,要区分变量名和变量值两个不同的概念。3变量名变量值存储单元a第六页,共七十二页,2022年,8月28日3.3整型数据3.3.1整型常量1、十进制整数:如29,-36,02、八进制整数:以0开头,后跟0~7中的若干数字;如:0123(83)103、十六进整制:以0x开头,后跟0~9,A,B,C,D,E,F(可小写)中的若干字符,如0xA2(162)10第七页,共七十二页,2022年,8月28日3.3.2整型变量1、整型变量在内存中的存放形式数据在内存中是以二进制补码形式存放的。例:inti,j;i=10;j=-10;求负数补码:①求该数的绝对值的二进制;②对其值连同符号位一起求反加1i10数据i存放示意图数据i在内存中实际存放情况0000000000001010-10j数据j存放示意图数据j在内存中实际存放情况1111111111110110第八页,共七十二页,2022年,8月28日2、整型变量的分类根据数值的范围可定义以下类型的变量:1、基本型:用int 定义2、短整型:用shortint或short定义3、长整型:用longint或long定义整:unsignedint4、无符号型:短整:unsignedshort长整:unsignedlong第九页,共七十二页,2022年,8月28日无符号数据的特点:最高位不是作为符号位,而是作为存放有效数值本身。例:inta;/*a的数值范围为-32768~32767*/unsignedintb;/*b的数值范围为0~65535*/符号位有符号整型变量a=327670111111111111111

无符号整型变量b=655351111111111111111

数值有效位第十页,共七十二页,2022年,8月28日

ANSI定义的整数类型类型比特数取值范围int16-32768~32767short16-32768~32767long32-2147483648~2147483647unsignedint160~65535unsignedshort160~65535unsignedlong320~4294967297第十一页,共七十二页,2022年,8月28日以十进制数13为例,说明该数在内存中的存储情况

其中:带符号数在内存中存储形式是:最左边一位(最高位)是符号位,正为0负为1不带符号的数在内存中的存储形式是:最左边一位(最高位)是数值的有效位00000000000011010000000000001101000000000000000000000000000011010000000000001101000000000000110100000000000000000000000000001101符号位intshortlongunsignedintunsignedshortunsignedlong第十二页,共七十二页,2022年,8月28日3、整型变量的定义变量类型定义的目的:让编译为其分配内存单元。变量的定义一般在函数开始的声明部分,也可以在分程序{}中,若在分程序中定义,其作用域仅在分程序中有效。例3.2voidmain(){inta,b,c,d;unsignedintu;a=12;b=-24;u=10;c=a+u;d=b+u;printf(“a+u=%d,b+u=%d\n”,c,d);}运算结果:a+u=22,b+u=-14由此可见:不同类型的整型数据可以进行混合运算第十三页,共七十二页,2022年,8月28日4、整型数据的溢出int型变量允许的最大值为32767,如果大于此数,将产生溢出例3.3整型数据的溢出情况voidmain(){inta,b;a=32767;b=a+1;printf(“%d,%d”,a,b);}运行结果:32767,-32768变量a是正整数的最大值,加1后赋给b,使数值有效位占据符号位。此种情况,编译系统不会报错,这要靠编程者把握。0111111111111111a:→32767

1000000000000000b:

→-32768

第十四页,共七十二页,2022年,8月28日3.3.3整型常量的类型

整型常量本身隐含了某种数据类型,将整型常量赋给整型变量时,要考虑常量的大小和变量所能表示的数据范围。一个整数,其值在如下范围:(1)-32768~32767int,shortint,longint(2)-2147483648~2147483647longint(3)对于非负数,如:0~65535unsignedint,unsignedshort0~4294967295unsignedlong说明:1.常量中无unsigned类型的数,正整数可赋给unsigned变量,只要数值不超过范围。2.在整型常量后加

l或L表示长整型常量,如:456L。3.在函数调用时,若被调用函数的形参是长整型变量,则要求主调函数的实参也是长整型数据。第十五页,共七十二页,2022年,8月28日3.4实型数据3.4.1实型常量的表示方法实数又称浮点数1.十进制形式的实数:由数字和小数点组成。如:3.14,0.26,0.0,-326.452.指数形式的实数:由尾数部分、字母e或E、指数部分组成。如:48.62e+12,其中:48.62为尾数,+12为指数

e为基数10,它表示48.621012C规定:e的前面要有数字,e的后面要有整数。第十六页,共七十二页,2022年,8月28日3.4.2实型变量1、实型数据在内存中的存放形式

float型变量:32位

double型变量:64位数符

阶符

d29(7位阶码)d23

d22(23位规格化数补码)d0

2127

≈1038数符

阶符

d61(10位阶码)d52

d51(52位规格化数补码)d021023

≈10308第十七页,共七十二页,2022年,8月28日2、实型变量的分类float型表示数的范围:最大正数:(1-2-23)2127=1038最小负数:-12127=-1038接近0的正数:2-12-128=3.910-38接近0的负数:-(2-1+2-23)2-128=-3.910-38double型表示数的范围:最大正数:(1-2-52)21023=10308最小负数:-121023=-10308接近0的正数:2-12-1024=10-308接近0的负数:-(2-1+2-52)2-1024=-10-308longdouble型表示数的范围:最大正数:-104932~104932第十八页,共七十二页,2022年,8月28日实型常量可赋给float或double型变量,根据变量类型截取实型常量的有效位。单精度实型数据(float)表数范围:●十进制形式:6~7位有效位●指数形式:.e双精度实型数据(double)表数范围:●十进制形式:15~16位有效位●指数形式:.e长双精度实型数据(longdouble)表示数据范围:指数形式:.e第十九页,共七十二页,2022年,8月28日3、实型数据的舍入误差存储单元所限,有效位以外的数字将被舍去,可能有一些误差。例3.4voidmain(){floata,b;longdoublec;a=123456.789e5;b=a+20;c=123456789.123456789e4923;printf(“a=%f\nb=%f\nc=%Lf\n”,a,b,c);}输出结果:a的值比20大的多,a+20的理论值是而有效位只有7位,因此,后面的数字是无意义的。第二十页,共七十二页,2022年,8月28日3.4.3实型常量的类型1、未加说明,系统将实型常量作为双精度处理例:floatf;f=2.45678*4532.65系统将两数按双精度运算,然后将乘积前7位赋给实型变量f,缺点:浪费系统资源,降低运算速度;解决的办法:在数的后面加f,如2.45678f,系统将其按单精度数运算。第二十一页,共七十二页,2022年,8月28日2、实型常量赋给float或double类型变量时,根据变量的类型截取其有效位。例main(){floatf1;doublef2;f1=111111.111;f2=111111.11111;printf(“f1=%f\nf2=%lf\n”,f1,f2);}输出结果:f1=111111.109375f2=111111.111110第二十二页,共七十二页,2022年,8月28日3.5字符型数据3.5.1字符常量字符常量:用一对单引号括起的一个字符,如‘a’,‘A’,‘#’,‘9’说明:1.字符常量的值是该字符在ASCII码中的码值(P374)。2.‘a’和‘A’是两个不同的字符常量,‘a’97,‘A’653.‘\’开头的字符序列称为特殊形式的字符常量(转义字符)

常用的转义字符功能及码值转义字符功能十进制的ASCII码值\a响铃7\b退格8\f换页12\n换行10\r回车13\t横向跳八格9\ddd1~3位八进制\101‘A’\xhh1~2位十六进制\x42‘B’第二十三页,共七十二页,2022年,8月28日例3.5voidmain(){printf(“---------------\n”);printf(“_ab_c\t_de\rf\tg\n”);printf(“h\ti\b\bj_k\n”);}运行结果:----------------fgdehj_k第二十四页,共七十二页,2022年,8月28日3.5.2字符变量字符变量:用于存放一个字符常量。字符变量的定义形式:char字符变量名如:charc1,c2;/*定义c1,c2字符型变量,占一个字节*/

c1=‘a’;c2=‘b’;/*将字符常量‘a’,‘b’赋给c1和c2*/3.5.3字符数据在内存中的存储形式及使用方法字符常量→字符变量中,是其ASCII码值,存储形式与整型数相似,整、字符型数据之间可通用。第二十五页,共七十二页,2022年,8月28日例3.6voidmain(){charc1,c2;c1=97;c2=98;printf(“c1=%c,c2=%c\n”,c1,c2);printf(“c1=%d,c2=%d\n”,c1,c2);}运行结果:c1=a,c2=bc1=97,c2=98c1c29798←内存中变量c1、c2的值c1c2←内存中变量c1、c2实际存储形式011000010110001001100001‘a’存储(ASCII码)“%c”“%d”a97输出格式符显示第二十六页,共七十二页,2022年,8月28日例3.7大小写字母的转换void

main(){charc1,c2;c1=‘a’;c2=‘b’;c1=c1-32;c2=c2-32;printf(c1=%c,c2=%c\n”,c1,c2);}运行结果:c1=A,c2=B第二十七页,共七十二页,2022年,8月28日例3.7.1字符数据与整型数据之间可以相互赋值voidmain(){inti;charc;c=97;i=‘a’;printf(“%c,%d\n”,c,c);printf(“%c,%d\n”,i,i);}运行结果:a,97a,97字符数据占一个字节,当ASCII码值在128~255之间时,其最高位为1,占据了符号位,以数据输出时为负数,以字符输出时是对应的字符,以无符号数据输出时,也是其对应的数据。第二十八页,共七十二页,2022年,8月28日例voidmain(){charc1=‘\376’;unsignedcharc2=‘\376’;printf(“%d,%c\n”,c1,c1);printf(“%d,%c\n”,c2,c2);}运行结果:

-2,254,

1111111011111110数值位符号位Charc1Unsignedc2

第二十九页,共七十二页,2022年,8月28日3.5.4字符串常量字符串常量:用一对双引号括起的字符序列。如:“BEIJING”,“CHINA”,“$123”,“a”字符串使用的有关说明:字符串可出现在输出函数中;如:printf(“ThisisaCprogram.\n”);2.字符常量与字符串常量意义不同;如:charc1,c2;c1=‘a’;可以

c2=“a”;错误不能把字符串赋给字符型变量。字符串在内存中存放时,系统自动加字符串结束符‘\0’,该字符在ASCII码中的码值为0,是空操作符,即无动作,不显示。

a\0

a第三十页,共七十二页,2022年,8月28日3.C中无字符串变量,字符串可以赋给字符数组;4.若字符串为“CHINA”,它在内存中的实际存储形式是:其长度是6,最后一个字符是‘\0’,是系统自动加上的,不能人为加上此字符,它不显示,打印输出时也无任何动作。CHINA\0第三十一页,共七十二页,2022年,8月28日3.6变量赋初值方法有:定义的同时给变量赋初值如:inta=3;floatb=3.1415;charc=‘x’;2.定义变量时,可以对其中的一部分变量赋初值如:inta=3,b,c,d=8;3.把同一个常量赋给多个变量时,应分别进行。如:inta=b=c=3;

而应写为:inta=3,b=3,c=3;4.初始化是在程序运行时,执行到本函数时赋以初值的。如:inta=3;相当于:inta;a=3;第三十二页,共七十二页,2022年,8月28日3.7各类数值型数据间的混合运算在C语言中,整、实、字符型数据间可以混合运算一、不同类型的数据运算时,要转换成同一类型

类型转换原则:低类型向高类型靠拢。横箭头为必转,纵箭头为有条件转换。转换以后进行运算,不同类型之间转换如下图所示:

低高double←floatint←char,shortlongunsigned第三十三页,共七十二页,2022年,8月28日二、类型转换进一步说明1.当两数为float时,都要转换为double型2.一个为float型,一个为char型时,要转换为double型。3.一个为long型,一个为int型时,则将转换为long型voidmain(){floata;doubleb;a=10+‘a’+1.5-8765.1234*’b’;b=10+‘a’+1.5-8765.1234*‘b’;printf(“a=%f,b=%lf\n”,a,b);}运行结果:a=-858873.562500,b=-858873.593200第三十四页,共七十二页,2022年,8月28日3.8算术运算符和算术表达式3.8.1C运算符简介除控制语句(if,while,for…)和输入/输出函数;大部分操作都作为运算符处理。1.算术运算符:+、-、*、/、%2.关系运算符:>、>=、<、<=、==、!=3.逻辑运算符:!、&&、||4.位运算符:<<、>>、~、|、^、&5.赋值运算符:=6.条件运算符:?:7.逗号运算符:,8.指针运算符:*、&9.求字节数运算符:sizeof10.强制类型转换运算符:(类型)11.分量运算符:·、12.下标运算符:[、]13.其它运算符:如函数调用第三十五页,共七十二页,2022年,8月28日3.8.2算术运算符和算术表达式1、基本的算术运算符

+:加法或正值运算符,如:2+3、+d-:减法或负值运算符,如:8-3、-c*:乘法运算符,如:3*5/:除法运算符,两侧可以是整或实型数据。

%:求余运算符两侧必是整型数据。第三十六页,共七十二页,2022年,8月28日例3.7.4整型数据除法运算voidmain(){inta,b,c;a=5;b=3;c=a/b;printf(“c=%d\n”,c);}运算结果:c=1第三十七页,共七十二页,2022年,8月28日例3.7.5长整型数据运算voidmain(){inta,b;longc;a=30000;b=30000;c=a+b;printf(“c=%ld\n”,c);}运算结果:c=-55360111010100110000a0111010100110000b1110101001100000结果符号位第三十八页,共七十二页,2022年,8月28日例3.7.6实型数据除法运算voidmain(){floata,b,c;a=5;b=3;c=a/b;printf(“%f\n”,c);}运算结果:1.666667说明:(1)整数除法中一个数为负时,结果取整后向0靠拢,如:-5/3=-15/(-3)=-18/(-3)=-2-8/3=-2(2)取余运算符两侧必须是整型数据,余数与被除数同号如:-29%4=-7余-129%(-4)=-7余1-52%7=-7余-352%(-7)=-7余3第三十九页,共七十二页,2022年,8月28日2、算术表达式和运算符的优先级与结合性算术表达式:

用算术运算符将运算对象(常量、变量、函数)连接起来的,符合C语言语法规则的式子。如:a*b/c-1.5+’a’在C语言中,运算符共有15个优先级,其中算术运算符的优先级是:*、/、%(3级)+、-(4级)算术运算符的结合方向:从左向右如:a-b+c:算符优先级相同,结合性:从左向右

a-b*c:算符*的优先级高于-若运算符两侧的运算对象类型不同时,低类型向高类型转换第四十页,共七十二页,2022年,8月28日3、强制类型转换运算符一般形式:(类型名)(表达式)如:(double)a将a转换为double型(int)(x+y)将x+y的值转换为整型(float)(5%3)将5%3的值转换成单精度实型说明:1.(int)(x+y)与(int)x+y意义不同2.类型转换得一个中间值,原变量的类型没有发生变化。例3.8voidmain(){floatx,i;x=3.6;i=(int)x;printf(“x=%f,i=%f\n”,x,i);}运算结果:x=3.600000,i=3.000000第四十一页,共七十二页,2022年,8月28日例voidmain(){floata,b,c,d;inte,f;a=5;b=3;c=a/b;d=(float)(5%3);e=(int)(a/3);f=(int)(b+3.8);printf(“c=%f,d=%f,e=%d,f=%d\n”,c,d,e,f);}运算结果:c=1.666667,d=2.000000,e=1,f=6思考:程序运行期间,a,b的值发生变化没有?第四十二页,共七十二页,2022年,8月28日4、自增、自减运算符

++:增1运算符,使变量值增1。--:减1运算符,使变量值减1。如:++i,--i:在使用变量i之前,先使变量i加(减)1。i++,i--:在使用变量i之后,使变量i值加(减)1。例3.8.2voidmain(){inti,j;i=3;j=++i;printf(“i=%d,j=%d\n”,i,j);}运算结果:i=4,j=4第四十三页,共七十二页,2022年,8月28日voidmain(){inti,j;i=3;j=i++;printf(“i=%d,j=%d\n”,i,j);}运算结果:i=4,j=3说明:1.++,--运算符只能用于变量,而不能用于常量和表达式。如a++,b--,5++,(x+y)--。2.++,--运算符的结合方向是从右向左。第四十四页,共七十二页,2022年,8月28日例voidmain(){inti;i=3;printf(“i1=%d\n”,-i++);printf(“i2=%d\n”,i);}运算结果:i1=-3i2=4例voidmain(){inti;i=3;printf(“i1=%d\n”,-++i);printf(“i2=%d\n”,i);}运算结果:i1=-4i2=4第四十五页,共七十二页,2022年,8月28日5、有关表达式使用中的问题说明(1)要注重C中的运算符和表达式的求值顺序设变量:inti=3;如表达式:(i++)+(i++)+(i++)此类表达式,系统的不同,求值顺序也有差异。如某系统的求值顺序是先求第一个,再求第二个最后求第三个子表达式,其结果是:

3+4+5=12,最后i的值为6而在TurboC中却有所不同:

3+3+3=9,最后i的值为6第四十六页,共七十二页,2022年,8月28日例voidmain(){inti=3,j=3,k,q;k=(i++)+(i++)+(i++);q=(++j)+(++j)+(++j);printf(“i=%d,j=%d,k=%d,q=%d\n”,i,j,k,q);}运算结果:i=6,j=6,k=9,q=18第四十七页,共七十二页,2022年,8月28日若表达式中有多个先增1(减1)或后增1(减1),解决的方法:将同类的子表达式进行扫描归类,先算中间结果,再算最后结果。例voidmain(){inti,j,x,y;i=3;j=30;x=(i++)+(++i)+(i++)+(++i);y=(j--)+(--j)+(j--)+(--j);printf(“i=%d,j=%d,x=%d,y=%d\n”,i,j,x,y);}运算结果:i=7,j=26,x=20,y=112第四十八页,共七十二页,2022年,8月28日(2)在C语言中运算符的确定

在由多个字符组成的表达式中,应尽可能多地从左向右将若干个字符组成一个运算符。如:i+++j其结合性是:(i++)+j而不是:i+(++j)。(3)printf函数输出实参的顺序如:inti=3;printf(“%d,%d\n”,i,i++);有的系统(vc)按从左到右的顺序求值,输出结果是:3,3而TurboC是按从右到左顺序求值,输出结果是:4,3结论:不写别人甚至自己都看不懂的程序,也不写那些不知道系统会怎样运行的程序第四十九页,共七十二页,2022年,8月28日3.9赋值运算符和赋值表达式1、赋值运算符“=”是赋值号,也是赋值运算符功能:计算表达式,赋给左边的变量。赋值运算符有计算的功能。如:a=3+5;b=x*y;a,b不管原来什么值,执行赋值语句后,新值将取代旧值。第五十页,共七十二页,2022年,8月28日2、类型转换变量类型不同时接收的数据有差异。当赋值运算符两侧的数据类型不一致时,在赋值时要进行类型转换。(1)实型数据赋给整型变量时,舍去小数部分。如:inti;i=3.56;结果i的值为3(2)整型数据赋给实型变量时,数值不值,但以浮点形式存放于内存。如:floata=23;先将23转换成23.000000,然后送a中。doubleb=23;先将23转换为23.00000000000000,然后送b中。第五十一页,共七十二页,2022年,8月28日(3)double型数据赋给float变量应注意数值范围不能溢出如:

doubled=123.45678e65;floatf;f=d;

由于数据溢出,f将得到错误的值float数据赋给double变量时,数值不变,有效位扩展到16位。第五十二页,共七十二页,2022年,8月28日(4)字符型数据赋给整型变量字符数据占一个字节,整型数据占两个字节,字符数据赋给整型变量有两种情况:①无符号字符型数据赋给整型变量:将其存放在整型变量的低8位中,而高位以0补齐例main(){inti;unsignedcharc;c=‘\376’;i=c;printf(“i=%d,c=%d\n”,i,c);}结果:i=254c=25411111110c=‘\376’i000000001111110第五十三页,共七十二页,2022年,8月28日②带符号的字符型数据赋给整型变量

若最高位为1(负数),则整型变量的高8位补1,若最高位为0(正数)则整型变量高8位补0。例main(){inti;charc;c=‘\376’;i=c;printf(“i=%d,c=%d\n”,i,c);}运行结果:i=-2,c=-211111110c=‘\376’i111111111111110第五十四页,共七十二页,2022年,8月28日(5)int,short,long型数据赋给char变量,将它们的低8位赋给char型变量例main(){inti=289;charc;

c=i;printf(“i=%d,c=%d\d”,i,c);}运算结果:i=289,c=330000000100100001i=28900100001c=33第五十五页,共七十二页,2022年,8月28日(6)long型数据赋给int型变量,将long型数据的低16位赋给int型变量例main(){inta;longb=65544;a=b;printf(“a=%d,b=%ld\n”,a,b);}运算结果:a=8,b=65544a=8符号位b=655440000000000001000

00000000000000010000000000001000第五十六页,共七十二页,2022年,8月28日(7)unsignedint型数据赋给long型变量时①unsignedint型数据赋给long型变量:将其赋给long型变量的低16位,高16位补0

main(){unsigneda=65535;longb;b=a;printf(“a=%u,b=%ld\n”,a,b);}11111111111111111111111111111111ab数值位0000000000000000符号位输出:a=65535,b=65535第五十七页,共七十二页,2022年,8月28日②若无符号数据赋给相同长度的带符号的变量时,则原样赋给。

unsignedintintunsignedshortshortintunsignedlonglongint

要注意数据的有效位占据符号位例main(){unsignedinta=65535;intb;b=a;printf(“a=%u,b=%d\n”,a,b);}运算结果:a=65535,b=-11111111111111111符号位1111111111111111ab数值位第五十八页,共七十二页,2022年,8月28日(8)带符号的数据赋给长度相同的无符号变量

原样赋给例3.9main(){unsignedinta;intb=-1;a=b;printf(“a=%u,b=%d\n”,a,b);}

x2n-1>x≥0

[x]补=

2n+x0>x≥-2n-1运算结果:a=65535,b=-111111111111111111111111111111111ba数值位符号位第五十九页,共七十二页,2022年,8月28日3、复合的赋值运算符

在赋值号前加其它运算符,可以构成复合运算符。如:

a=a+ba+=bx=x*(y+8)x*=y+8x=x%3x%=3为了便于记忆,将赋值号左边移到赋值号右边,赋值号左边再补上变量名。如:a+=ba+=ba=a+b其中a是变量,b是表达式

x*=y+8x*=y+8x=x*(y+8)

在C语言中,有十个二元运算符:+、-、*、/、%、《、》、&、^、|可与赋值号一起构成复合运算符;其优点是:简化程序,提高编译效率。第六十页,共七十二页,2022年,8月28日4、赋值表达式

赋值运算符将变量和表达式连接起来的式子。(1)一般形式:<变量><赋值运算符><表达式>(2)赋值表达式求解过程:计算赋值号右边表达式的值,然后赋给左边的变量。如:a=3+5在C语言中,表达式又可以是赋值表达式,如:a=(b=5)

其中b=5是赋值表达式,其值是5,因此a的值是5,整个表达式的值是5。第六十一页,共七十二页,2022年,8月28日(3)赋值运算符的结合顺序:从右向左因此:a=(b=5)与a=b=5是等价的。赋值表达式的例子:a=b=c=5表达式的值为5,a,b,c的值为5。a=5+(c=6)表达式的值为11,a的值为11,c的值为6。a=(b=4)+(c=6)表达式的值为10,a的值为10,b为

温馨提示

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

评论

0/150

提交评论