c语言while循环例子

1. 什么是While循环

While循环是C语言中最基础、最常用的循环,其主要功能是在满足条件的前提下不断重复执行某些操作。语法结构如下所示:

while (条件){

循环体语句

}

其中,条件是一个逻辑表达式,如果条件为真(即非零),则执行循环体语句;否则结束while循环。

下面是一个简单的While循环例子:

#include<stdio.h>

int main(){

int i = 0;

while (i < 10){

printf("%d ", i);

i++;

}

return 0;

}

上述代码中的循环体是printf("%d ", i);,当i小于10时,则会一直执行循环体。

2. While循环的使用场景

While循环主要用于需要反复操作的程序,比如用户输入和处理、文件读写、网络数据传输等。

2.1 用户输入

在用户输入时,我们通常需要让程序不断地等待用户输入,直到用户输入了我们需要的内容才继续执行后面的代码。这时可以使用While循环来实现:

#include<stdio.h>

int main(){

int score = -1;

while (score < 0 || score > 100){

printf("请输入一个0-100之间的分数:");

scanf("%d", &score);

if (score < 0 || score > 100){

printf("分数输入错误!\n");

}

}

printf("输入的分数为:%d\n", score);

return 0;

}

在上述代码中,当用户输入的分数不在0-100之间时,程序会不断要求用户重新输入,直到用户输入的分数符合要求才继续执行后面的代码。

2.2 文件读写

在文件读写时,我们通常需要一边从文件中读取数据,一边进行处理,直到数据读取完毕才结束。这时可以使用While循环来实现:

#include<stdio.h>

int main(){

char buffer[100];

FILE *fp = fopen("file.txt", "r");

while (fgets(buffer, 100, fp) != NULL){

printf("%s", buffer);

}

fclose(fp);

return 0;

}

在上述代码中,fgets()函数用于从文件中读取一行数据,如果读取成功则返回读取的字符串,否则返回NULL。当fgets()函数返回NULL时,说明数据读取完毕,程序结束循环。

3. While循环的注意事项

3.1 循环条件一定要能够改变

在使用While循环时,一定要保证循环条件有可能发生改变,否则程序就会一直陷入死循环。下面是一个死循环的例子:

#include <stdio.h>

int main() {

int i=0;

while(i<10) {

printf("hello\n");

}

return 0;

}

在上述代码中,i的值始终为0,由于循环条件永远成立,程序就会一直执行循环体,导致死循环。

3.2 保证循环条件的正确性

在使用While循环时,一定要保证循环条件的正确性。如果循环条件不正确,可能会导致程序逻辑错误。下面是一个循环条件错误的例子:

#include <stdio.h>

int main() {

int sum=0;

int i=0;

while(i<=10) {

sum+=i;

i++;

}

printf("1到10的和为:%d\n", sum);

return 0;

}

在上述代码中,i的初始值为0,循环条件为i<=10,但是循环体内对i进行了自增操作,导致i的最终值为11。由于循环条件不正确,程序的输出结果也与预期不符。

4. 总结

While循环是C语言中最基础、最常用的循环,其主要功能是在满足条件的前提下不断重复执行某些操作。在使用While循环时,一定要注意循环条件是否能够改变,以及循环条件的正确性。同时,While循环也是一种非常常用的控制结构,广泛应用于用户输入、文件读写等程序设计中。

后端开发标签