8.函数
函数的特点就是简化代码,代码复用。
9. 数组
要存储1-10的数字,怎么存储?
C语言中给了数组的定义:一组相同类型元素的集合
9.1数组的定义
9.2数组的下标
C语言规定:数组的每个元素都有一个下标,下标是从0开始的。
数组可以通过下标来访问的
如:
int arr[10]={1,2,3,4,5,6,7,8,9,10}
//如果数组10个元素,下标的范围是0-9
9.3数组的使用
tip:通过下标找到(访问)元素
//[]-下标引用操作符,i是下标;注意[10]里的10是指定数组的元素个数
10.操作符(也称运算符)
简单介绍一些,后期会详细讲
(1)单目运算符
说明:
1、!-相反-真变假,假变真
2、sizeof-操作符-是计算变量或数据类型所占内存空间的大小,单位是字节(注意:strlen是库函数,是计算字符串的长度的,统计的是字符串中\0之前的字符个数)
3、++与--是自增自减运算符:
b=a++;//后置++,先使用,后++。b=a,a=a+1
b=++a;//前置++,先++,后使用。a=a+1,b=a
4、(类型)
自动转换规则:
强制类型转化:
强制类型转换的一般形式如下: (类型说明符)(表达式) 其功能是把表达式的值的数据类型强制转换成类型说明符所指定的类型。
(2)算术运算符
注意:
1. /-除号
/ 除号的两端如果都是整数,执行的是整数除法(即结果为整数,舍去小数部分)
/ 除号的两端至少有一个数是浮点数,才能执行浮点数的除法(即结果为小数)
如:1/2=0 1.0/2=0.5
2. %-取余(取模)
% -取余(取模),%操作的两个操作数必须都是整数
结果的正负取决于被除数
0除以任何数后都不会存在余数
如:-5%-3=-2 0%2=0
3.优先级:同数学
4.结合性:结合方向“自左向右”运算
(3)关系运算符
注意:
1.优先级:前面四个运算符(>、>=、<、<=)的优先级高于后面两个运算符(!=、==)
赋值运算符<关系运算符<算术运算符
2.结合性:“自左向右”
3.运算结果:真(1)和假(0)两种
4.不能连续写(如:1
(4)逻辑运算符(只关注真假)
注意:
1、运算规则
&&:两边都为真时,结果才为真(1)
||:两边都为假时,结果才为假(0)
2.C标准规定,参与逻辑运算的操作数可以不是逻辑值,操作数为非0时表示真,为0时表示假;但逻辑运算的结果只可以取逻辑值(真和假)。
3.逻辑运算的短路特性:当表达式的运算结果能够确定以后,运算过程立即终止,后面部分不再执行。
(5)条件运算符
//双分支if语句等价于条件运算符
(6)赋值运算符
分类:
1.简单赋值运算符:=
作用:将右侧的表达式赋值给左侧的变量
2.复合赋值运算符:+=、−=、*=、/=、%=、<<=、>>=、&=、^=、|=
如:
a+=1等价于a=a+1
注意:
1.赋值运算符两边的数据类型要求一致
若不一致:类型转换
转换条件:当赋值运算符两侧的数据类型不一致时
转换原则:转换为被赋值变量的类型。
2.赋值运算符的优先级只高于逗号运算符,且结合方向均为“自右向左”
(7)逗号表达式
说明:
1、逗号表达式的求解过程为自左至右,依次计算各表达式的值,最后一个表达式的值即为整个逗号表达式的值;
2、逗号运算符的优先级最低。
3、使用逗号表达式的目的通常是想分别得到各个表达式的值,而并非一定要得到整个表达式的值。
4、常用于for循环语句中,除此以外很少使用。
(8 )移位操作符
(9)位操作符
10)下标引用、函数调用和结构成员