表达式和语句(4)

表达式

表达式由运算符和运算对象组成。运算对象可以是常量、变量或二者的组合。
每个表达式都有一个值,比如5>3的值是1,这种表达式的值不是1就是0。条件为真,值为1,条件为假,值为2.

语句

语句是c程序的基本构建块。一条语句相当于一条完整的计算机指令,大部分以分号结尾。
列如一些常见的语句:

#include<stdio.h>
int main()
{
int count,sum; //声明 声明不是一条语句
 count=0;//表达式语句
 sum=0;//表达式语句
 while(count++<20) //迭代语句
 	sum=sum+count;
 printf("sum=%d\n",sum);//表达式语句
 returna 0;//跳转语句
 }

副作用和序列点

副作用:副作用是对数据对象或文件的修改。

  • 列如:staes=50;他的副作用是将变量的值设置为50。从c语言的角度看,主要目的是对表达式求值。
  • 对表达式求值的副作用就是把变量staes的值改为50.跟赋值运算符一样,自增、自减运算符也有副作用,使用他们的主要目的就是使其副作用

序列点:序列点是程序执行的点,在该点上,所有的副作用都在进入下一步之前发生。

  • c语言中,语句的分号标记了一个序列点。意思是,在一个语句中,赋值、自增、自减运算符对运算对象做的改变必须在程序执行下一条语句之前完成。
  • 任何一个完整条件表达式的结束都是一个序列点

完整表达式:是指这个表达式不是另一个更大表达式的子表达式

  • 例如:
#include<stdio.h>
int main()
{
   int a=9;
   while(a++<10)
   	printf("%d",a);
   return 0;
}
10

对于a++的"先使用,在递增",常见的误区可能是,printf()先使用a的值之后在递增。但是a++<10是一个完整表达式,该表达式的结束就是一个序列点,所以程序在进入printf()之前就已经发生副作用a已经递增。同时,使用后缀形式保证了a与10比较之后才进行递增

复合语句(块)

复合语句是用花括号括起来的一条或多条语句,复合语句也称为
列如:

index=0;
while(index++<10)
	sam=10*index+2;
printf("sam=%d\n",sam);
index=0;
while(index++<10){
	sam=10*index+2;
	printf("sam=%d\n",sam);
}
  • 第一段程序:while循环只有一条赋值语句,可以不使用花括号。循环结束后,printf()函数只会被调用一次
  • 第二段程序:花括号确保两条语句都是while循环的一部分,每执行一次就会调用一次printf()函数。整个复合语句被视为一条语句。
八、心得体会 1. 目前流行的计算机日历程序,比较典型的是Windows各版本中的日历程序以及基础于该程序所开发的各种应用程序中的日历程序。然而,这些程序都千篇一律的局限在一个很短的时间范围内。(Windows各个版本一般都局限在1980年至2099年这一范围内),但是,在很多情况下,特别是在众多的科学研究领域中,一个时间跨度较大的日历程序是很有参考价值的。C程序设计语言充分发挥了其自身无与伦比的优越性,用极短的程序文本填补了这一领域的空白,同时用铁的事实强有力的告诉世人:C程序设计语言作为计算机语言家族的新生事物,其发展前景是极为广阔的。 2. 经过上一个学期对《C程序设计》的学习,我们学习了理论知识,了解了C语言程序设计的思想,这些知识都为我们的下一步学习打下了坚实的基础。通过课程设计,一方面是为了检查我们一个学期来我们学习的成果,另一方面也是为了让我们进一步的掌握和运用它,同时也让我们认清自己的不足之处和薄弱环节,加以弥补和加强。 3. 通过对c语言万年历的设计进一步的巩固了用c语言编写程序,并且有利于更好的掌握c语言! 4. 在万年历的编写过程中也体会到了做事情一顶要细心、认真。更加知道了要掌握好基础知识。还有体会到了成功的感觉!在万年历的设计过程中更加体会到了团队合作的重要性,“一个诸葛亮比不上三个臭皮匠。”知道了只有团队合作才会更好的完成设计!也体会到以后在工作中团队合作的必要性和重要性! 5. 通过本项课程设计也培养了我独立思考、 综合运用所学有关相应知识的能力,掌握 工程软件设计的基本方法,强化上机动手编程能力,闯过理论与实践相结合的难关! 6. 由于C语言是近年在国内外得到迅速推广应用的一种语言。C语言功能丰富,表达能力强,使用灵活方便,应用面广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的许多特点。通过这次的c语言程序设计更加了解了c语言的好处和其可用性! 7. 在这次课程设计中也知道了自己的动手能力不强有待进一部的提高!在设计过程中不能够把书本上的知识与实践相结合,这也就增加了设计不好该程序的想法!在设计过程中的一次次设计错误增加了我放弃的想法!不过经过大家的努力终于完成了课程设计!完成该程序后想起自己以前的每一次对自己失去信心,就觉得并不是在知识掌握上打败了,而是自己对自己缺乏信心!只要自己对自己不失去信心相信就可以完成那些以前认为完成不了的事情!也让我懂得了要想成功首先就必须有很强的自信心!懂得了自己以后要在做任何事情时都要自信!当自己都不相信自己能够成功时还可能会获得成功吗?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值