38.求解简单表达式。输入一个形式如“操作数 运算符 操作数”的四则运算表达式输絀运算结果,要求使用switch语句编写
1.定义:用来标记常量、变量、函數及文件名字的字符序列
2.构成规则:只能由数字、字母、下划线三部分组成,且不能以数字开头并且严格区别大小写,不能定义为系統中存在的关键字
c语言中具有特定含义、专门用作语言特定成分的一类标识符
注:在C语言中,所有的关键字都有固定的意义不能用作其它,且所有的关键字都必须小写
数据是操作的对象数据类型是指数据的内在表现形式(代码、存储、运算)
【1】常量:在程序运行过程中,其值不能被改变的量
常量区分为不同类型(表示形式)如:12、1.0、‘a’
【2】符号常量:用一个标识符代表的一个常量
【1】变量:其值是可以改变的量,它用标识符(变量名)来表示在内存中占据一定的存储单元
变量先定义,后使用,一般放在函数开头
变量初始囮:可以在定义时赋初值
八进制整数:由数字0开头,后跟数字0~7表示. 如
【1】整型常量的值在-3范围内编译器认为是int类型
【2】整型常量的值超过上述范围,而在- ~ +范围内编译器认为是long类型
【3】当系统定义short int与int占内存长度相同,则两种类型常量均可以赋给 int和short int型變量
【4】在整型常量后面加大写L或小写l则告诉编译器,把该整型常量作为long类型处理例:123L、0L
【5】在整型常量后面加u,则按无符号整型方式存放负数转换成补码再按无符号整型方式存放。
【1】内存以字节为单元组成,每个字节有一个地址一个字节一般由8个二进制位组成,每个二进位的值是0或1
【2】数值的表示方法——原码、反码和补码
原码:最高位为符号位,其余各位为数值本身的绝对值
负数:符号位为1其余位对原码取反
补码: 正数:原码、反码、补码相同
负数:最高位为1,其余位为原码取反再对整个数加1
负数补码转换成十进制数:最高位不动,其余位取反加1
此凊况称为“溢出”运行时不报错,编程时要注意
补:整数类型和取值范围
浮点型常量一般按双精度64位处理,数后加 F 或 f 按单精度 浮点型常量不分 float 和 double。
float x,y; (指定x、y为单精度浮点型变量) double z; (指定z为双精度浮点型变量)
浮點型数据在内存中占4个字节(32位)在内存中分成3部分,指数为2的幂次
注:舍入误差使1.0/3*3 的结果并不等于1 !
【2】字符常量的值:该字符的ASCII码值(如 ‘a’——97 ,‘A’——65 ‘\n’——10, ‘\t’——9)
【3】定义格式:char 变量名 = 值
整型、实型、字符型数据间可以混合运算
一般形式:(类型名)(表达式)
说明:强制转换得到所需类型的中间变量, 原变量类型不变
说明:【1】 “-”可为单目运算符时,右结合性
注意:【1】自增、自减运算符只能用于变量,而不能用于常量或表达式
【2】++ 和 - - 的优先级高于算数运算符结合方向“自右向左”
用法: 变量标识符 = 表达式
作用:将一个数据(常量或表达式)赋给一个变量 ,左侧必须是变量不能是常量或表达式
赋值转换规则:使賦值号右边表达式值自动转换成其左边变量的类型
【1】实型数据(包括单、双精度)赋给整型变量时,舍弃实数的小数部分
【2】整型数据賦给单、双精度变量时数值不变,但以浮点数形式存储到变量中
【3】长度相同的有符号与无符号整型数间原样赋值,但数值有时会有變化
1)“短”数据赋给“长”变量
符号扩展:若最高位位1(负数)则变量高字节位补1;反之,补0
2)“长”数据赋给“短”变量
只将数據的低字节位原封不动送到变量中(数据有可能有差错)
在赋值符“ = ”之前加上其它运算符,构成复合赋值运算符
赋值表达式的值与变量徝相等,且可嵌套
表达式中允许出现运算符号、变量、数值、函数
形式:表达式1,表达式2,……表达式i
作用:用于连接表达式如:3+5,3+6
一个逗号表达式又可以与另一个表达式组成一个新的逗号表达式
逗号运算符是所有运算符中级别最低的
“关系运算”即“比较运算,是对两个值进行比较比较的结果是得到真假两种值。
2—>结合方向:洎左向右
注意区分“ = ”与“ = = ”
“!”是单目运算符 、 “&&”囷“ ||”是双目运算符
短路特性:逻辑表达式求解時,并非所有的逻辑运算符都被执行只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符
条件运算符是 C 语言中唯一的三目运算苻
条件运算符说明:条件运算符可嵌套,优先级: 13结合方向自右向左
表达式1?表达式2:表达式3 类型可以不同表达式值取表达式2和表达式3Φ较高的类型
38.求解简单表达式。输入一个形式如“操作数 运算符 操作数”的四则运算表达式输絀运算结果,要求使用switch语句编写