循环语句:1.while循环 2.for循环 3.do while循环
1.while循环:
while(表达式) (表达式为真,进入循环;为假,不进入循环)判断
{
循环语句; 调整
}
注意点:
(1).while循环里的break被执行的话,while循环就会被终止(break的作用是跳出while循环)
(2).while循环里的continue被执行的话,就会结束while循环的这本次循环后面的内容,
进行下一次循环。(但不是结束整个while循环)
2.for循环:
for(表达式1;表达式2;表达式3)
{
循环语句;
}
注意点:
(1).表达式1为初始化部分,用于初始化循环变量的。
(2).表达式2为条件判断部分,用于判断循环终止。
(3).表达式3为调整部分,用于循环条件的调整。
(4).for循环里的break的作用也是终止整个循环。
(5).for循环里的continue的作用也是结束本次循环,不再执行循环里后面的代码
3.do while循环:
do
{
循环语句;
}
while(表达式);
注意点:
(1).do while循环里的break的作用也是终止整个循环。
(2).do while循环里的continue的作用也是结束本次循环,不再执行循环里后面的代码
4.goto语句: 跳转
/*示例1.使用getchar清除输入缓冲区的写法
#include <stdio.h>
int main()
{
int ch = 0;
while ((ch = getchar()) != EOF)
{
putchar(ch);
}//ctrl+z跳出来
return 0;
}
//根据这个代码又学到新的东西:
//scanf和getchar获得数据的函数不是直接键盘输入什么他就拿什么的,键盘和获得函数之间还有一个
//输入缓冲区,键盘输入数据到输入缓冲区,获得函数从输入缓冲区拿数据(是这样一个流程)
/*示例2.计算数组元素的个数
#include <stdio.h>
int main()
{
int arr[] = { 1,2,3,4,5,6,7,8,9 };
//sizeof(arr) 计算的是数组的总大小,单位为字节
//sizeof(arr[0]) 计算的是数组元素的大小
//两者一除,得到的就是数组元素的个数。
int sz = sizeof(arr) / sizeof(arr[0]);//计算数组的元素个数
printf("%d\n", sz);
return 0;
}
*/
/*示例3.
//二分查找:条件比较苛刻,得在一个有序的数组里查找
#include <stdio.h>
int main()
{
int arr[] = { 1,2,3,4,5,6,7,8,9,10 };//一个有序数组
int k = 3;//要在数组里查找的数
int sz = sizeof(arr) / sizeof(arr[0]);
int left = 0;//查找的左下标
int right = sz - 1;//查找的右下标
while (left <= right)
{
int mid = (left + right) / 2;
if (arr[mid] < k)
{
left = mid + 1;
}
else if (arr[mid] > k)
{
right = mid - 1;
}
else
{
printf("找到了,下标是%d\n", mid);
break;
}
}
return 0;
}
*/