C使用运算符来代表算术运算。
赋值运算符:=
运算动作从右到左,符号=不表示“等于”,而是一个复制运算符。
death=110;//把110赋给变量death。符号=左边为变量名,右边为值。
运算符:加号+ 减号-
同数学中的用法,符号运算符:-和+ 表示正负数。
乘法运算符:* 同数学中的用法。
程序清单5.4。调试过程中,得到,printf()内的表达式,不会影响到num的值。
int num =1;
while(num<21)
{
printf("%4d %6d/n",num,num*num);
num=num+1;
}
//直接printf()打印,并不影响到num=num+1。
除法运算符:/
同数学一样用法,浮点类型会得出一个浮点型的结果,
整数除法则会产生整数结果,整数不能有小数部分,
有则会被丢弃,这个过程成为截尾,当整数和合浮点数进行混合运算时,结果为浮点数。
但计算机无法真正用证书去除浮点数,在这种情况下运算之前将证书转换为浮点数。
*应注意运算符的优先级和顺序,同数学。
C语言有个typedef机制,允许一个已有的类型创建一个别名,例如。
typedef double real;
real death;//使用由typedef定义的类型,real为double的别名。
求模运算符:%
即数学里的求余,但对于浮点数是无效的。
还可以用于求结果是否为0,如month%3,若结果为0则为3个月了。
若求模数若为负数结果也为负数。
/*程序清单5.9的思路:
首先定义了符号常量 每分钟60秒。
定义了三个变量,使用 while循环 当输入数字 符合条件进入循环
先除 得出 分钟数 然后再进行对每分钟60的求余 得出的余数就是剩下的秒数。*/
增量和减量运算符:++和--
++:作用为将其操作数的值增增加1,
++出现在它作用的变量前面,这是前缀(prefix)模式,反之为后缀(postfix)模式
为最高计算优先级,应当注意使用,有一定风险。
前缀:先计算再赋值;后缀:先赋值再计算。
如果一个变量出现在同一个函数的多个参数中,不要使用增量或减量
如果一个变量多次出现在一个表达示里时,不要使用增量或减量
表达式与语句:语句组成了C的基本程序步骤,并且大多数语句由表达式构造而成,语句是构造程序的基本成分,程序是一系列带有某种必须的
标点的语句组合;表达式是由运算符和操作数组合构成的,操作数可以是常量,变量或者是二者的组合,从C角度讲,主要目的是对表达式的求
值。
语句是对计算机的指令,有简单的语句和复合语句,简单语句以一个分号结束;复合语句或代码块由一个或多个括在花括号里的语句构成。
表达式是运算符和操作数的组合。
一个声明语句不是一个表达式语句,int n 不是表达式也不是语句。
函数语句引起函数的执行。
符合语句是使用花括号组织起来的两个或更多的语句。
在没有花括号的情况下while循环语句的范围是从while到下一个分号。
类型转换:如果混合使用类型,会自动完成类型转换,会提升类型也会降级类型,当作为函数的参数被传递时,char 和 short会被转换为
int,float会被转换为double,可以通过函数原型来阻止自动提升的发生,应当注意类型转换这个问题。
函数参数:分为形式参数和实际参数;可以说参量就是变量,而阐述是由函数调用提供的值,并且将他赋给对应的参量。
函数中的变量是由函数调用提供的值,并且将它赋给相对应的参量。
函数中的变量的名字是局部的,这意味着在一个函数里的定义的名字不会与其他的地方相同的名字发生冲突
原型是一个函数声明,他描述了函数的返回值和它的参数,当编译器 main()使用到函数时看到原型时,百年一起就知道函数应该有什么类型的
参数,并且在需要使用实际参数的类型保持一致时,编译器会插入一个类型指派。例如调用pound(3.8989)将被转换成为pound(3)
一个运算符作用于一个或多个操作数来产生一个值,带一个操作数的运算符称为一元运算符,要求两个操作数的运算符称为二元运算符。
/*章大概讲了C的各样运算符,语句,表达式,类型转换,还循循渐进了WHILE循环和函数。
总的这章可以打6分,草草之笔,希望对大家有些许帮助,不足还望指出。*/