百科知识

C语言三大循环大揭秘:while、for、do-while,带你轻松掌握循环用法!

在C语言中,循环是一种非常重要的控制结构,它允许程序重复执行一段代码。有三种主要的循环结构:while循环、for循环和do-while循环。下面我将分别对这三种循环进行深入的解析,并给出一些示例代码,帮助你轻松掌握它们的用法。

1. while循环

定义与语法:

c

while (条件) {

// 循环体

}

使用场景:

当需要根据某个条件判断是否继续执行循环时,可以使用while循环。例如,在一个游戏程序中,当玩家的生命值大于0时,可以不断地输出生命值。

示例代码:

c

include

int main() {

int life = 100;

int i;

while (life > 0) {

printf(“You have %d lives left.

“, life);

life–;

}

return 0;

}

2. for循环

定义与语法:

c

for (初始化表达式; 条件; 更新表达式) {

// 循环体

}

使用场景:

当需要按照一定的顺序执行一系列操作时,可以使用for循环。例如,在一个计算器程序中,可以根据用户输入的数字进行加、减、乘、除等运算。

示例代码:

c

include

int main() {

int num1, num2;

char operation;

printf(“Enter two numbers and an operation (+, -, , /): “);

scanf(“%d %c %d”, &num1, &operation, &num2);

switch (operation) {

case ‘+’:

printf(“%d + %d = %d

“, num1, num2, num1 + num2);

break;

case ‘-‘:

printf(“%d – %d = %d

“, num1, num2, num1 – num2);

break;

case ”:

printf(“%d %d = %d

“, num1, num2, num1 num2);

break;

case ‘/’:

if (num2 != 0) {

printf(“%d / %d = %d

“, num1, num2, num1 / num2);

} else {

printf(“Error: Division by zero is not allowed.

“);

}

break;

default:

printf(“Invalid operation. Please enter a valid operation (+, -, , /).

“);

break;

}

return 0;

}

3. do-while循环

定义与语法:

c

do {

// 循环体

} while (条件);

使用场景:

当需要在满足某个条件之前一直执行循环体时,可以使用do-while循环。例如,在一个计算器程序中,可以根据用户输入的数字进行加、减、乘、除等运算,直到用户输入一个特定的数字(如”q”)为止。

示例代码:

c

include

int main() {

int num1, num2;

char operation;

char input;

printf(“Enter two numbers and an operation (+, -, , /): “);

scanf(“%d %c %d”, &num1, &operation, &num2);

do {

printf(“Enter another number or ‘q’ to quit: “);

scanf(“%c”, &input);

} while (input != ‘q’);

switch (operation) {

case ‘+’:

printf(“%d + %d = %d

“, num1, num2, num1 + num2);

break;

case ‘-‘:

printf(“%d – %d = %d

“, num1, num2, num1 – num2);

break;

case ”:

printf(“%d %d = %d

“, num1, num2, num1 num2);

break;

case ‘/’:

if (num2 != 0) {

printf(“%d / %d = %d

“, num1, num2, num1 / num2);

} else {

printf(“Error: Division by zero is not allowed.

“);

}

break;

default:

printf(“Invalid operation. Please enter a valid operation (+, -, , /).

“);

break;

}

return 0;

}