复习:
流程控制:分为三种:1、顺序 2、选择 3、循环
其中循环:分为 for while do-while
while先判断再执行
while(逻辑值表达式)
{
语句
}
do-while 最少执行一次 先执行后判断
do
{
语句
}while(逻辑值表达式);
for(初始化;逻辑值表达式;操作)
{
语句
}
注:
1 当逻辑值表达式为真时继续循环 当为假时退出循环
2 表达式中在值是否被初始化
3 结束退出在条件
运算符:
区分:
定义变量在分隔符也是逗号;不可用逗号表达式初始化
输出的result为 1 (运算顺序从右至左)
输入输出:
1 获取一个字符:getchar()
getchar()默认的上层I/O是同步阻塞 当没有输入时会一直等待
知道用户输入为止
2 格式化输入:scanf(“格式化字符串”,存储对象地址);
存储对象地址需要用到取变量地址符:&变量名
输出:
输出一个字符:putchar()
格式化输出:printf("格式化字符串",对象的内容);
注意:普通字符会原样输出 占位符会输出对象的内容 转义字符会按含义输出
数组:
数组是一块“连续”且“同类型”的存储空间
定义数组
类型 数组名[长度];
定义并初始化:
类型 数组名[长度]={值1,值2 ,值3,值4.......};
数组的引用(数组的下标是从0开始的)
例:buf[n]
1 数组的存储空间长度为:类型所占的字节*数组元素个数
2 数组名等于首地址
3 第i个元素地址:首地址+(n-1)*类型所占的字节 n为第n个元素 (下标)
算法:
2 监哨值法:在多个元素中寻找最大值 按照线性顺序进行指向最大值或最小值