📅  最后修改于: 2023-12-03 15:29:43.590000             🧑  作者: Mango
在C语言中,我们经常需要使用循环来重复执行某个代码块,例如在处理数组元素时,我们需要遍历每个元素。常见的循环语法包括 for、while 和 do-while。
for循环是一种常见的循环结构,在每次循环中,程序计算循环变量的值,并判断循环条件是否成立。当条件成立时,执行循环体中的代码,然后更新循环变量。当条件不成立时,退出循环。
for (初始化表达式; 条件表达式; 更新表达式)
{
// 循环体
}
其中,初始化表达式用来初始化循环变量,只在循环开始时执行一次;条件表达式用来判断循环是否继续,如果成立则进入循环体,不成立则跳过循环;更新表达式用来更新循环变量,在循环体执行完毕后执行。
例如,以下代码使用for循环从数组中查找元素。
int arr[] = {1, 3, 5, 7, 9};
int i, num = 7;
int len = sizeof(arr) / sizeof(int);
for (i = 0; i < len; i++)
{
if (arr[i] == num)
{
printf("元素 %d 在数组中的位置是 %d\n", num, i+1);
break;
}
}
while循环适用于不知道循环次数的情况,在每次循环中,程序计算循环条件的值,如果成立则执行循环体中的代码,然后重新计算循环条件的值;如果不成立则退出循环。
while (条件表达式)
{
// 循环体
}
例如,以下代码使用while循环从数组中查找元素。
int arr[] = {1, 3, 5, 7, 9};
int i = 0, num = 7;
int len = sizeof(arr) / sizeof(int);
while (i < len && arr[i] != num)
{
i++;
}
if (i < len)
{
printf("元素 %d 在数组中的位置是 %d\n", num, i+1);
}
else
{
printf("元素 %d 不在数组中\n", num);
}
do-while循环和while循环类似,区别在于每次循环结束后先执行一次循环体中的代码,然后再计算循环条件的值。
do
{
// 循环体
}
while (条件表达式);
例如,以下代码使用do-while循环从数组中查找元素。
int arr[] = {1, 3, 5, 7, 9};
int i = 0, num = 7;
int len = sizeof(arr) / sizeof(int);
do
{
if (arr[i] == num)
{
printf("元素 %d 在数组中的位置是 %d\n", num, i+1);
break;
}
i++;
} while (i < len);