📜  C |回路和控制结构|问题14(1)

📅  最后修改于: 2023-12-03 15:29:43.590000             🧑  作者: Mango

C语言 | 回路和控制结构 | 问题14

在C语言中,我们经常需要使用循环来重复执行某个代码块,例如在处理数组元素时,我们需要遍历每个元素。常见的循环语法包括 for、while 和 do-while。

for循环

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 (条件表达式)
{
    // 循环体
}

例如,以下代码使用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循环

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);