控制流
程序语言中用于控制各计算机操作执行的次序的语句
· 语句:表达式之后加上一个分号(;)
· 复合语句(程序块):花括号({ })
· if-else if-else
/* 折半查找函数binsearch:在v[0]<=v[1]<=···<=v[n-1]中查找x */
int binsearch(int x, int v[], int n)
{
int low, high, mid;
low = 0;
high = n - 1;
while(low <= high){
mid = (low + high) / 2;
if(x < v[mid])
high = mid - 1;
else if(x > v[mid])
low = mid + 1;
else
return mid;
}
return -1;
}
· switch语句
· while循环与for循环
如果语句中需要执行简单的初始化和变量递增,用for合适
若没有初始化或重新初始化的操作,用while更合适
/* shell排序算法:先比较距离远的元素,可以快速减少大量的无序情况,从而减轻后续的工作
shellsort函数:按递增顺序对v[0]···v[n-1]进行排序
*/
void shellsort(int v[], int n)
{
int gap, i, j,temp;
c = 0;
for(gap = n/2; gap > 0; gap /= 2)
for(i = gap; i < n; ++i){
for(j=i-gap; j>=0 && v[j]>v[j+gap]; j-=gap)
temp=v[j], v[j]=v[j+gap], v[j+gap]=temp;
}
}
· 逗号运算符, C语言优先级最低的运算符,在for语句中常用
· do-while循环
· break、continue
· 尽量少用的goto