(1)变量的定义
(2)变量的赋值与初始化及其输入
(3)常量与变量
(4)浮点数
(5)表达式及运算符优先级
(6)交换变量和复合赋值与递增递减
---------------------------------------------------------------------------------------------------------------------------------
(1)变量的定义
变量是一个保存数据的地方,当我们需要在程序里保存数据时,就需要一个变量来保存它。
变量的形式一般是:<变量形式> <变量名称>;
如int price; int amount
变量名称是一种“标识符”,用来区别两个不同的变量。标识符只能由字母、数字以及下划线组成且数字不能出现在第一个位置上,c语言的关键字也不可以用做标识符。如:auto,break,case...等等。
(2)变量的赋值与初始化及其输入
#include<stdio.h>
int main()
{
int price=0;
printf("money");
scanf("%d",&price);
int change=100-price;
printf("back%d\n",change);
return 0;
}
其中int price=0这一行则定义了一个类型为int 名字为price的变量,其初始值为0
“=”为赋值运算符是将右边的值赋给左边的变量。如a=b的含义则是将b的值赋给a,反之b=a的含义则是将a的值赋予b
初始化:所有变量在第一次被使用(出现在赋值运算符右边)之前应被赋值一次
输入:scanf("%d",&price);其含义为要求scanf这个函数读入下一个整数,读到的结果赋值给变量price 注意:price前面的&不能省略
(3)常量和变量
常量:固定不变的数,是常数。直接写在程序里,我们称作直接量。
定义一个常量的方法:const int AMOUNT=100
const是一个修饰符,加在int前面,用来给这个变量加上一个const(不变)的属性。表示这个变量的值一旦初始化,就不能再修改了。
注:如果试图对其进行修改就会被编译器指出其为一个错误
(4)浮点数
数据类型分为整数和带小数点的数(浮点数)
浮点数:带小数点的数值。浮点的本意为小数点是浮动的,是计算机内部表达非整数的一种方式。
整数类型如:int ,printf("%d",...),scanf("%d",...)
浮点数数类型如:double,printf("%f",...),scanf("%lf",...)
double是“双精度浮点数”的第一个单词,被人们用来表示浮点数类型。除此之外还有float。
(5)表达式及运算符优先级
表达式:一个表达式是一系列运算符和算子的组合,用来计算一个值。如a=b+4其中a,b,4为算子,=与+则为运算符。
运算符:是指进行运算的动作。
算子:是指参与运算的值,可能是常数,也可能是变量,还可能是一个方法的返回值。
运算符 : 四则运算 c符号 意义
+ + 加
- - 减
× * 乘
÷ / 除
% 取余
%的含义是两个数相除以后的余数。
运算符优先级:优先级 运算符 运算 结合关系 举例
1 + 单目不变 自右向左 a*+b
1 - 单目取负 自右向左 a*-b
2 * 乘 自左向右 a*b
2 / 除 自左向右 a/b
2 % 取余 自左向右 a%b
3 + 加 自左向右 a+b
3 - 减 自左向右 a-b
4 = 赋值 自右向左 a=b
(6)交换变量与复合赋值
交换变量:如a=5 b=6 要使a=6 b=5则需要一个没有赋值的变量t来做一个容器
具体为:
int a=5;
int b=6;
int t;
t=a;
a=b;
b=t;
printf("a=%d","b=%d",a,b);
复合赋值:5个算术运算符可以和赋值运算符“=”结合起来,形成复合运算符。
如:“+=”,“-=”,“*=”,“/=”和“%=”
a+=2含义为a=a+2,其他含义与此类似
注:两个运算符中间不要有空格
递增递减运算符:“++”,“--”是两个特殊的运算符,它们是单目运算符,算子必须是变量,这两个运算符分别叫做递增和递减运算符。作用为给这个变量+1或-1
++和--可以放在变量前面,叫做前缀形式,也可以放在变量后面,叫做后缀形式
a++是a+1之前的值,而++a是a+1之后的值
如a=10 则a++=10 此时a=11, ++a=11, a=11