- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C程序设计讲义运算符与表达式掌握运算符与表达式的常用运算符、数学公式转化为 C 语言表达式的基本能力。….)
2.各类数值型数据(整型、实型、字符型)的混合运算
(1).自动动转换(隐式转换):
自动转换发生在不同类型数据进行混合运算时,由编译系统自动完成。
‘A’+2*0.2 char -int -long -float -double
(2).强制转换:(类型说明符)表达式
例如:(int)a 将a的结果强制转换为整型量。(int)97.7
注意:c语言在强制转换时,括起来的是类型而不是需要转换的变量;在强制类型转换时,得到一个所需类型的中间变量,原来变量的类型未发生改变。
3.算术运算符和算术表达式
(1).算术运算符
+(加法运算符。如3+5)
-(减法运算符或负值运算符。如5-2,-3)
*(乘法运算符。如3*5)
/(除法运算符。如5/3,5.0/3.0,5/3.0)
%(模运算符或求余运算符,%要求两侧均为整型数据。如7%4的值为3)。
(2).算术表达式
算术表达式:用算术运算符和括号将运算对象(也称操作数)连接起来的、符合C语法规则的式子,称为算术表达式。
(3).(算术)运算符的优先级与结合性
1)C语言规定了运算符的“优先级”(先乘除取余再加减)和“结合性”(自右至左)。
2)如果在一个运算对象两侧的运算符的优先级别相同,则按规定的“结合方向”处理。
提问:求下面算数表达式的值
(1) x+a%3*(int)(x+y)%2/4 设x=2.5,a=7,y=4.7
2.5+7%3*7%2/4 2.5
(2) (float)(a+b)/2+(int)x%(int)y 设 a=2,b=3,x=3.5,y=2.5
4. 赋值运算符和赋值表达式
(1).赋值运算符、赋值表达式
赋值运算符:赋值符号“=”就是赋值运算符。
赋值表达式:由赋值运算符组成的表达式称为赋值表达式。
一般形式:〈变量〉〈赋值符〉〈表达式〉
(2)赋值运算符左边必须是变量,右边可以是常量、变量、函数调用或常量、变量、函数调用组成的表达式。
(3)赋值符号“=”不同于数学的等号,它没有相等的含义。(“==”相等)
(4)赋值运算时,当赋值运算符两边数据类型不同时,将由系统自动进行类型转换。
将实型数据赋值给整型变量时,舍弃实数的小数部分
将整型数据赋给实型变量时,数值不变,2浮点数形式存储到变量中
将一个double类型数据赋值给float变量时,只保留前面7位有效数字,存放到float变量中
字符赋值给整型变量,要看系统差异
将int,short,long赋值给char是,会丢失1个字节内容
将带符号的整型数据(int)赋值给long变量时,要进行符号扩展
赋值表达式的求解过程:
先计算赋值运算符右侧的“表达式”的值
将赋值运算符右侧“表达式”的值赋值给左侧的变量。
整个赋值表达式的值就是被赋值变量的值。
(5).复合赋值运算符
在赋值符“=”之前加上某些运算符,可以构成复合赋值运算符
+=,-=,*=,/=,%=
例如:n+=1 等价于 n=n+1
提问:写出下面赋值表达式运算后a的值,设原来a=12;
(1) a+=a (2) a-=12 (3) a*=2+3
(4) a/=a+a (6) a+=a-=a*=a
5.逗号运算符和逗号表达式
逗号表达式的一般形式:表达式1,表达式2,…表达式n
逗号表达式的求解过程是:自左向右,求解表达式1,求解表达式2,…,求解表达式n。整个逗号表达式的值是表达式n的值。
例题:
void main()
{
int x,a;
x=(a=3,6*3); /* a=3 x=18 */
printf(%d,%d\n,a,x);
x=a=3, 6*a; /* a=3 x=3 */
printf(%d,%d\n,a,x);
}
家庭作业:完成书后习题
四川职业技术学院计算机科学系实验(实训)报告 课程 C程序设计 教师 邓绯 班级 学生姓名 实验名称 算数表达式上机指导 任务
(教师) 编写程序,输入2个整数,求出它们的商数和余数”并进行输出
输入一个3位整数,把它分解成3位(百位,十位和个位)数输出,并输出它的逆序数。比如,输入123,应输出321。 学生
作业 main()
{
int a,b;
scanf(%d%d,a,b);
printf(a/b商数%d\na%b余数%d\n,a/b,a%b);
}
main()
{
int a;
scanf(%d,a);
printf(%d%d%d,a%10,a/10%10,a/100);
}
体会
您可能关注的文档
最近下载
- GBT . 色漆和清漆 防护涂料体系对钢结构的防腐蚀保护 第部分 表面类型和表面处理.docx VIP
- XXX集团ERP项目一期上线切换方案.doc
- 审计服务承诺及质量保证措施.docx VIP
- 人教版(PEP)小学六年级英语上册《Unit 1 How can I get there》大单元整体教学设计.docx
- 皮肤病学常见皮肤病治疗(98页).pptx VIP
- 诽谤和解承诺书范文.docx VIP
- chrome谷歌浏览器官方下载「chrome谷歌浏览器官方下载安卓」.docx VIP
- 华为任职资格标准管理三级.doc VIP
- 2022年秋高中数学必修第一册讲义(人教版).pdf VIP
- 初中文言文必背18个文言虚词(附记忆口诀)!.pdf VIP
文档评论(0)