Chapter02
在阅读前,能否先看一下这里(有更新= - =)
1.如何快捷的搜索自己需要的内容?
假如我只想看逗号表达式的内容,按住Ctrl+F,在弹出的对话框中查找逗号表达式即可。
2.我的初衷,我说过我只是想提高我们专业,不分一班还是二班,所有同学的C语言成绩。
3.关于文档:这个文档是我整理了下书上的知识点,我水平有限,所以会交给夏老一份,然后再给主讲人一份,他们审核后,再在完成练习题作用后上传到群共享,同时这份文档也可以做复习使用。
如果在文档中有遗漏或者错误的地方,欢迎发邮件到
50503@qq.com
主要复习内容:第五章(关于这个第几章的问题,我奇迹般的改了三次)
主要内容: 基本运算符
类型转换
++ --的问题
+= -=的问题
优先级的问题
最后的一些练习
(课上拓展内容不包含)
基本运算符:
=,其实这不是等号,说是等号,你会被段老喷的。。。这个是赋值符号
X=5;读作将5赋值给X,这个叫赋值运算。
+,其实这个。。就是加号。。跟幼儿园的用法一样
-, 就是减号。。跟幼儿园的用法一样
* / 跟小学二年级用法一样
但是注意看目录,你会发现有个叫符号运算符-和+
好这里,说几个专业术语,(书P 数据对象,左值,右值和操作数,大家看看作为)
继续回到符号运算符- +
这里又个结合性的说法。。。右结合性
简单的比方,-1,,这就是右结合性,符号主动和右边的数结合。1-1就是左结合性
% 取模符号,唯一值得吐槽的就是8%5读作8除以5取模。
类型转换:
完成辅导课作业的同学应该对这个题有印象吧?
若已定义X和Y为double型,则表达式:x=1,y=x+3/2的值是()
答案2.0
可以先看看数P105怎么说的
但是如果我就是希望得到2.5怎么办呢?P107的指派运算符有例子。
++ --的问题:
++ - -的问题是选择题,读代码写结果最喜欢考的问题。
以++为例,n++的意思是说,我先把n取出来赋值,再来n+1
++n的意思是说,我先把n+1,再将它们的和赋值
书P101“不要太聪明”,上面有对n++运算的解释。
还是很迷糊?
= - =先来个最简单的例子吧
int n = 5;
m=n++;//打印出来m是多少?n是多少? m = 5,n = 6
m=++n;//打印出来m是多少?N是多少?m = 6 , n = 6
然后我们再来看个例子
#include int main() { int n = 1; int y; y = n++ + n++; /*虽然这样的写法可能会使IDE发出警告:“‘-n’上的运算结果可能是未定义的”,但确实是可以执行的*/ printf(\"n = %d,y = %d\\n\ } 在这里会先将使用n,所以y=n+n=2,然后再执行n+1,但是有两个n++,所以n的值会变成3了 明白了这个之后,我们再来看一个的例子 #include int main() { int y = 10; while(y-->5) printf(\"++ - - 什么的最讨厌了\\n\"); printf(\"y = %d\\n\ } 那么这里会打印几次 \"++ - - 什么的最讨厌了\"呢? 会打印五次 y = 4 看了这么多例子,实际上我们再平时的编程是不会这样写的,这样写也许会显得很geek,但是我们宁愿写成while(y < 5);y--;这样。具体原因可以看书P101“不要太聪明”。 += -=的问题: 其实+ = 和- = 比上面那个问题简单了很多。 比如x = 5;x + = 2的意思就是说x = 5;然后x = x +2 ,当然- =还有* =都是这样的。 这样的写法是十分推荐的,而且很简洁直观,又显得geek,具体的内容可以看到书P132。这里就不加赘述了,这里主要说下这个题 设int a=12,则执行完语句a+=a-=a*a后,a的值是_____ 在这个题中满足怎样的一个运算顺序呢?其实也很容易联想到,赋值符号“=”肯定是最后进行运算的一个符号所以你得不停的向右看,从没有进行赋值运算的运算开始,所以就要先算a * a =144 然后 由于我上述的那个原因你得从右边的赋值号算到左边来先算a- = 144 ,然后一路算过来最后答案是- 2。那么这里就有个运算优先级的问题了。 优先级的问题: 书上没有对这个问题进行非常详细的总结 依据夏老所讲的,简单的来说就是 ! > 算术运算符 > 关系运算符 > && > || > 赋值运算符 如果你想得到非常详细的答案的话 http://blog.csdn.net/randyjiawenjie/article/details/6884832 这个网址中有个表格可以看看 最后的一些练习: 书P111 复习题 先来做下 第二题, 然后是第五题, 第六题, 第七题, 第九题, 第十题 答案在下一页。 第二题 a.6 b.52(不会四舍五入) c.0 d.13 第五题 11 11 12 11 第六题 SOS:4 4.00 第七题 1 2 a. 1 2 b. 101 第九题 c,stuvw 第十题 死循环 3 4 5 6 7 8 9 10 //五个空格的间隔 //四个空格的间隔 102 103 104 //四个空格的间隔 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务