c语言_while循环


思考:画出该题的流程图
2013/8/9
C语言程序设计教程
第四章 流程控制
11
流程图:
定义变量i, sum 赋初值
(while) i<=100 Y sum=sum+i i++
N
输出sum (总和)
2013/8/9
C语言程序设计教程
第四章 流程控制
12
源程序: #include <stdio.h> main() { int i,sum=0; 循环初值 i=1; while(i<=100) { sum=sum+i; i++; 循环变量增值 } printf("%d",sum); }
循环条件
循环终值
循环体
2013/8/9
C语言程序设计教程
第四章 流程控制
13
练习:
执行过程 i sum 文件包含 1 0+1*1=1 #include <stdio.h> main() 主函数 2 1+2*2=5 { int i=1,sum=0; 循环初值 3 5+3*3=14 4 14+4*4=30 while(i<=10) 循环条件 5 30+5*5=55 { sum+=i*i; 将i的平方累加到sum中 6 55+6*6=91 i++; 7 91+7*7=140 循环变量增值 } 8 140+8*8=204 printf(“sum=%d”,sum); 9 204+9*9=285 } 10 285+10*10=385 运行结果: 11 sum=385 思考
第四章 流程控制
1
4.2.1 while循环
授课教师: 杨 莉
2007年10月30日
2013/8/9
C语言程序设计教程
第四章 流程控制
2
一般形式:
while(表达式)
{ 需要执行循环的语句; }
While 是“当”的意思
2013/8/9
C语言程序设计教程
第四章 流程控制
3
执行过程:
1)
2)
先判断表达式是否为真;
2013/8/9
C语言程序设计教程
第四章 流程控制
9
与if语句比较:
if (条件)
{ 条件成立时执行的语句; }
两者格式基本相同,条件成立时,if语句仅执行一次, 而while语句则将反复执行,直到条件不成立为止。
2013/8/9
C语言程序设计教程
第四章 流程控制
10
例: 用 while 语句实现求从1到100的累加和。 sum = 1 + 2 + 3 + ... 100 分析:1) sum= (1+100) * 50 2) 定义变量i,i=1,i=2…i=100 3) sum=sum+i
while ( 父母不给买小红裙)
{
我哭; }
2013/8/9
C语言程序设计教程
第四章 流程控制
6
首先,一个合适的判断是否继续的条件相当重要。 要想继续哭,条件有两个:“父母不给买小红裙”并 且“我还没有哭累”。 while ( 父母不给买小红裙 && 我还没有哭累) {
我哭;
}
2013/8/9
C语言程序设计教程
2013/8/9
C语言程序设计教程
第四章 流程控制
8
while循环特点:
特点:先判断表达式,后执行循环体 说明: 1、循环体有可能一次也不执行 2、循环体可为任意类型语句
3、下列情况,退出while循环: ●条件表达式不成立(为零) ●循环体内遇break,return,goto 4、无限循环: while(1) 循环体;
第四章 流程控制
7
其次,大多数情况下,条件需要被恰当地改变。
1)得在哭的间隙观察大人是否同意买裙。 2)假设小女孩有一个疲劳度,每哭一次疲劳度加1,当 疲劳度到达200时,可怜的小女孩累了…… while(父母不给买小红裙 && 疲劳度 < 200) { 我哭; 我偷看爸妈是否同意买裙; 疲劳度++; }
2013/8/9
C语言程序设计教程
第四章 流程控制
15
小结: 1)while语句先判断后执行循环语句。
2)while语句中的语句部分若为简单句可不用{}。
3)while语句的循环体中应有趋于结束的条件。
4)对于while循环而言,若表达式不成立语句部分
一次也不表达式为真,执行语句,直到表达式
为假;
3) 若表达式为假,则跳出循环。
2013/8/9
C语言程序设计教程
第四章 流程控制
4
执行流程:
while 假(0)
表达式
真(非0) 语句
2013/8/9
C语言程序设计教程
第四章 流程控制
5
例:假设有一个爱哭的小娃娃,有一天她要求父母给 买一条小红裙,可惜父母不同意,于是她就开始一个 循环:
第四章 流程控制
16
作业:编写程序计算下列算式的值:
直到某一项A<=0.000001时为止。输出最后C值。
2013/8/9
C语言程序设计教程
1、编程计算1~10的平方和
2013/8/9
C语言程序设计教程
第四章 流程控制
14
思考
2、程序阅读 main() { float score,sum=0; int i=1,count=0; while(i<=50) { printf(“input a score:\n”); scanf("%f",&score); sum+=score; if (score<60) count++; i++; } printf(“sum=%10.2f, count=%d\n",sum,count); }
合集下载

C语言之while循环

C语言之while循环

C语⾔之while循环while循环能做什么先来个概念格式,while循环的⼀般形式为:while(表达式){语句块}意思是,先计算“表达式”的值,当值为真(⾮0)时,执⾏“语句块”;执⾏完“语句块”,再次计算表达式的值,如果为真,继续执⾏“语句块”……这个过程会⼀直重复,直到表达式的值为假(0),就退出循环,执⾏ while 后⾯的代码。

看这段话你可能会有很多疑问,不过不重要,只要记住那个格式就⾏,因为上⾯那段话是官⽅阐述。

通常将“表达式”称为循环条件,把“语句块”称为循环体,整个循环的过程就是不停判断循环条件、并执⾏循环体代码的过程。

其实就是符合条件就进⾏⼤括号⾥的内容,不符合条件,⽆视它就好。

看个例⼦,⽤ while 循环计算1加到100的值:#include <stdio.h>int main(){int i=1, sum=0;while(i<=100){sum+=i;i++;}printf("%d\n",sum);return 0;}运⾏结果:5050代码分析:1. 程序运⾏到 while 时,因为 i=1,i<=100 成⽴,所以会执⾏循环体;执⾏结束后 i 的值变为 2,sum 的值变为 1。

2. 接下来会继续判断 i<=100是否成⽴,因为此时 i=2,i<=100 成⽴,所以继续执⾏循环体;执⾏结束后 i 的值变为 3,sum 的值变为3。

3. 重复执⾏步骤 2)。

4. 当循环进⾏到第100次,i 的值变为 101,sum 的值变为5050;因为此时 i<=100 不再成⽴,所以就退出循环,不再执⾏循环体,转⽽执⾏while循环后⾯的代码。

while 循环的整体思路是这样的:设置⼀个带有变量的循环条件,也即⼀个带有变量的表达式;在循环体中额外添加⼀条语句,让它能够改变循环条件中变量的值。

这样,随着循环的不断执⾏,循环条件中变量的值也会不断变化,终有⼀个时刻,循环条件不再成⽴,整个循环就结束了。

c语言中无限循环的2种方式

c语言中无限循环的2种方式

c语言中无限循环的2种方式在C语言中,我们经常需要实现无限循环的功能。

无限循环就是指程序会一直执行某个操作,直到满足某个条件才停止。

以下是C语言中实现无限循环的两种方式:1. while循环while循环是C语言中最常用的循环结构之一,它的语法如下: while (条件表达式){执行语句;}当条件表达式为真时,会一直执行循环体中的语句,直到条件表达式为假为止。

如果条件表达式一直为真,那么这个while循环就会一直执行下去,实现无限循环的功能。

例如,以下代码就是一个无限循环的while循环:while (1){printf('Hello, world!');}这个while循环的条件表达式永远为真,因此会一直输出'Hello, world!',直到程序被手动停止。

2. for(;;)循环除了while循环之外,C语言中还有一种更简洁的无限循环方式,那就是for(;;)循环。

这种循环结构的语法如下:for (;;){执行语句;}由于for循环中的三个表达式都可以省略,因此for(;;)循环就变成了一个无限循环的结构。

和while循环一样,只有在满足特定的条件时,程序才会退出循环。

例如,以下代码就是一个无限循环的for(;;)循环:for (;;){printf('Hello, world!');}这个for(;;)循环的三个表达式都被省略了,因此会一直输出'Hello, world!',直到程序被手动停止。

总结在C语言中实现无限循环的两种方式分别是while循环和for(;;)循环。

无论使用哪种方式,都需要注意在循环体中添加退出循环的条件,否则程序将会一直运行下去,直到被手动停止。

while的c语言用法

while的c语言用法

while的c语言用法介绍如下:
在C 语言中,while 循环语句用于反复执行一段程序,直到指定条件不再成立。

while 语句的基本语法如下:
while (condition) { // 循环体}
其中,condition 是一个逻辑表达式,如果它的值为true,则执行循环体中的语句,否则跳过循环体,继续执行下面的语句。

while 循环的执行过程如下:
1.判断condition 是否为true;
2.如果condition 为true,则执行循环体中的语句;
3.执行完循环体中的语句后,再次判断condition 是否为true;
4.如果condition 为true,则再次执行循环体中的语句,否则跳出循环。

以下是一个简单的while 循环的例子,用于计算1 到10 的和:
#include <stdio.h> int main() { int sum = 0, i = 1; while (i <= 10) { sum += i; i++; } printf("1+2+...+10 = %d\n", sum); return 0; }
该程序先定义了一个变量sum 用于存储和,以及一个变量i 用于计数。

然后使用while 循环计算1 到10 的和,最后输出结果。

需要注意的是,如果condition 始终为true,则会陷入无限循环,导致程序无法正常退出。

因此,在编写while 循环时,需要确保condition 能够在一定的条件下为false,以避免出现无限循环的情况。

C语言中的三种循环语句

C语言中的三种循环语句

C语⾔中的三种循环语句⽬录⼀、while循环⼆、dowhile循环三、for循环⼀、while循环while即:⾸先检查启动循环的条件是否满⾜,当条件满⾜时,不断地重复循环体内的语句,直到不满⾜条件就退出。

while循环基本形式:while(条件){<循环体>;<循环体>;}eg: 1//输⼊任意个int型,整数并判断其位数#include int main(){int x;intn=0;scanf("%d",&x);n++;x /=10;while(x >0){n++;x /=10;}printf("%d\n",n);return0;}eg: 2//判断输⼊的位数/*1.⽤户输⼊x;2.初始化n为0;3.x = x/10,去掉个位;4.n++;5.如果 x>0,回到3;6.否则n就是结果; */#include int main(){int x;intn=0;scanf("%d",&x);n++;//n=1x /=10;//对输⼊的数进⾏取整数商,得到的 x放⼊while循环中while(x >0){//判断 x 是否⼤于零,满⾜条件则执⾏⼤括号中的语句n++;//n=2x /=10;}printf("%d\n",n);return0;}eg: 3//输⼊⼀个数,计算阶乘(while⽅法)#include int main(){intn;//定义变量n为输⼊的数scanf("%d",&n);//读⼊输⼊的数intfact =1;//定义变量fact保存程序的结果(初始化)inti =1;//定义变量 i 作为循环条件(初始化)while(i <= n){fact *= i;i ++;}printf("%d!=%d\n",n,fact);return0;}⼆、do while 循环do while 即:进⼊do while 前不做检查,⽽是在执⾏完⼀轮循环后再来检查循环的条件是否满⾜,如果满⾜则继续下⼀轮循环,不满⾜则结束循环。

c语言while用法

c语言while用法

c语言while用法在C语言中,while循环是一种常用的控制结构,用于重复执行一段代码,直到满足某个条件为止。

while循环在需要重复执行某个任务时非常有用,例如计算总和、处理一系列数据等。

下面将详细介绍while循环的用法。

一、while循环的基本语法while循环的语法结构如下:```cwhile(条件){//循环体语句}```其中,条件是判断循环是否继续的条件表达式。

如果条件为真,则执行循环体语句,否则跳出循环。

二、while循环的用法1.初始化变量:在循环开始前,可以使用while循环初始化一些需要使用的变量。

例如,可以初始化计数器变量,用于记录循环执行的次数。

```cintcount=0;while(count<10){//循环体语句count++;}```2.计算总和:使用while循环可以方便地计算一组数据的总和。

循环变量初始化为0,每次循环将当前数值加到循环变量上,直到满足终止条件为止。

```cintsum=0;intnums[]={1,2,3,4,5};intn=sizeof(nums)/sizeof(nums[0]);while(count<n){sum+=nums[count];count++;}printf("总和为:%d",sum);```3.处理一系列数据:使用while循环可以方便地处理一系列数据。

例如,可以使用while循环遍历一个数组,并对每个元素执行一些操作。

```cintarr[]={1,2,3,4,5};intn=sizeof(arr)/sizeof(arr[0]);inti;for(i=0;i<n;i++){printf("%d",arr[i]);if(i%2==0){//处理偶数元素的操作}else{//处理奇数元素的操作}}```三、注意事项1.避免无限循环:在使用while循环时,需要确保条件表达式的值最终会变为假,否则会导致无限循环。

c语言中循环结构

c语言中循环结构

c语言中循环结构循环结构在C语言中是一种非常重要的控制结构,它能够让程序重复执行某段代码,实现代码的复用和效率的提高。

循环结构主要有三种形式:while循环、do-while循环和for循环。

1. while循环while循环是一种先判断条件再执行的循环结构。

它的语法形式如下:```while (条件) {循环体语句;}```在循环开始之前,先判断条件是否成立,如果条件成立,则执行循环体语句;否则,跳过循环体语句,继续执行后面的代码。

循环体执行完毕后,再次判断条件是否成立,如果成立,则继续执行循环体语句,直到条件不成立为止。

2. do-while循环do-while循环和while循环类似,不同之处在于它是先执行循环体,再判断条件是否成立。

它的语法形式如下:```do {循环体语句;} while (条件);```在循环开始时,先执行循环体语句,然后判断条件是否成立,如果条件成立,则继续执行循环体语句,否则跳出循环。

3. for循环for循环是一种常用的循环结构,它的语法形式如下:```for (初始化表达式; 条件表达式; 更新表达式) {循环体语句;}```for循环的执行顺序是先执行初始化表达式,然后判断条件是否成立,如果条件成立,则执行循环体语句;执行完循环体语句后,再执行更新表达式,再次判断条件是否成立,以此类推。

当条件不成立时,跳出循环。

循环结构的应用非常广泛,可以用于处理各种重复性任务,比如计算数列的和、输出九九乘法表等。

下面以计算数列的和为例,演示这三种循环结构的使用。

我们来看一下使用while循环计算数列的和的代码:```#include <stdio.h>int main() {int n = 10; // 数列的长度int sum = 0; // 数列的和int i = 1; // 循环变量while (i <= n) {sum += i;i++;}printf("数列的和为:%d\n", sum);return 0;}```在这段代码中,我们使用while循环从1开始累加到n,得到数列的和。

while的c语言用法

while的c语言用法While是C语言中的循环语句之一,它的语法形式如下:```while(条件表达式){//循环语句}```其中,条件表达式的值为true时,循环语句会持续执行,直到条件表达式的值变为false为止。

循环语句可以是任何C语言语句,包括赋值、条件语句、函数调用等等。

在使用while循环时,需要注意以下几个问题:1. 条件表达式的值应该尽量简单,避免在循环中反复计算,否则会拖慢程序的运行速度。

2. 循环语句中应该包含使条件表达式变为false的语句,否则会导致死循环。

3. 在循环语句中应该避免使用break或continue语句,否则会破坏程序的结构,使代码难以维护。

下面是一个简单的例子,演示了while循环的基本用法:```#include <stdio.h>int main(){int i = 0;while(i < 10){printf("%d\n", i);i++;}return 0;}```输出:123456789```这个例子中,我们使用while循环打印了从0到9的整数。

循环的条件表达式是i < 10,当i小于10时,循环中的语句会一直执行,每次输出i的值,并且将i加1。

当i变为10时,循环终止。

除了基本用法外,while循环还可以结合数组、指针等数据结构,实现复杂的算法和数据处理任务。

在实际开发中,while循环是一个非常常用的编程语句,尤其是循环次数不确定的情况下,使用while循环可以极大地提高程序的可读性和可维护性,同时也能节省内存和计算资源的开销。

总之,掌握while循环的使用方法和注意事项,对于C语言程序员来说是非常重要的。

只有不断练习,深入理解循环的本质和运行机制,才能写出高效、健壮、易维护的代码。

C语言讲课-while循环结构课件

输入:1
输入:101=0
输出:
sum=101
此程序的功能?
什么情况下两者结果相同?
二、do-while语句
5.3 for语句
语句一般格式 for (表达式1;表达式2;表达式3) 语句
功能:计算表达式1的值,再判断表达式2,如果其值为非0(逻辑真),则执行内嵌语句(循环体),并计算表达式3;之后再去判断表达式2,一直到其值为0时结束循环,执行后续语句。
?
-3
do-while语句
语句一般格式 do 语句 while (表达式); 功能:先执行内嵌语句(循环体),之后计算表达式的值,不为0(逻辑真)时,再执行循环体并判断条件,直到表达式的值为 0 结束循环,转去执行while下面的语句。
do-while循环的算法

2
)直到型循环(
while循环控制结构
假设一张报纸厚0.1毫米,将报纸从中间对折多少次后,报纸高度会超过珠穆朗玛峰?
#include <stdio.h>void main( ){ float t=0.0001; int n=0; while(t<=8844) { t=t*2; n++; } printf(“ %d\n”,n);}
while循环控制结构
假设一张报纸厚0.1毫米,将报纸从中间对折,报纸会有多厚?
#include <stdio.h>void main( ){ float t=0.0001; t=t*2; printf(“ %f”,t);}
while循环控制结构
假设一张报纸厚0.1毫米,将报纸从中间对折,报纸会有多厚?
学习内容
循环结构的引入
C语言提供了三种循环控制语句,构成了三种基本的循环结构:while语句构成的循环结构do-while语句构成的循环结构for语句构成的循环结构

C语言-while循环

C语⾔-while循环循环是结构化程序设计的基本结构之⼀,它和顺序控制、选择结构共同作为各种复杂程序的基本构造单元(摘⾃谭浩强的《C程序设计》。

⼀、while循环:1、使⽤while循环控制输出0到9⼗个数:int i=0; //循环变量赋初值int a=0;while (i<10) { //循环条件scanf("%d",&a);printf("%d\n",a); //{}中的是循环体i++; //循环变量的⾃增,代表的是循环变量的步长}2、循环输⼊⼗个数,求出⼗个数中的最⼤值、最⼩值、和、平均值int i=0;int s=0,a=0;int max=0,min=0;float avg=0;printf("请输⼊10个数字:\n");i=0;s=0;while (i<10) {scanf("%d",&a);s+=a;if (i==0) {min=a;max=a;}else{if (max<=a) {max=a;}if (min>=a) {min=a;}}i++;}avg=s/10;printf("⼗个数之和=%d,最⼤值=%d,最⼩值=%d,平均值=%.1f",s,max,min,avg);3、利⽤循环找出是偶数的两位数,且是平⽅数int i;i=10;while (i<100) {if (!(i%2) && !(sqrt(i)-(int)sqrt(i))) {printf("%d\t",i);}i++;}4、利⽤循环找出能被3整除且不能被7整除的⼤于0⼩于100的数并输出int i;i=3;while (i<100) {if (i%7) {printf("%d\t",i);}i+=3;}5、利⽤循环找出个位⽐⼗位⼤的两位数,并输出:i=10;while (i<100) {if (i/10<i%10) {printf("%d\t",i);count++;}i++;}printf("\n%d\n",count);6、找出个位是奇数,⼗位是偶数的两位数int i;int count=0;i=10;while (i<100) {if ((i/10%2==0) && (i%2==1)) {printf("%d\t",i);count++;}i++;}printf("\n%d\n",count);7、循环实现1+2+3+。

C语言循环语句-while语句


(2)从键盘依次输入学生的成绩,并进行计数、累加, 当输入-1时,停止输入,进行输出学生的数量、总成绩、 平均成绩。 main() { int n=0; float t=0,x; scanf(“%f”,&x); while(x!=-1) { n=n+1; t=t+x; scanf(“%f”,&x); } printf(“n=%d t=%6.2f pj=%6.2f\n”,n,t,t/n); }
循环语句——while语句
1、while语句的一般形式: while(表达式) { 语句 } 2、举例“定量喝水” :比如每天喝水总量 2000ml,每次喝500ml,需要喝4次水,保证 能正好喝2000ml。
喝水过程描述:
第1次 喝水500ml, 水量0+500=500ml; 第2次 判断 水量<2000ml, 喝水500ml, 水量 00+500=1000ml; 第3次 判断 水量<2000ml, 喝水500ml, 水量 1000+500=1500ml; 第4次 判断 水量<2000ml, 喝水500ml, 水量 1500+500=2000ml; 第5次 判断 水量<2000ml 不成立,停止喝水。
用while循环表示:
假设水量用L表示 L=0; While(L<=2000) { 喝水500ml; L=L+500; }
for循环的执行流程:
0ቤተ መጻሕፍቲ ባይዱ
非0
3、程序举例 (1)令i的初值为0,测试i是否小于5;若为真, 则显示i的值;然后i值递增1,再进行测试,直 到i<5不成立,显示:停止循环。 main() {int i=0; while(i<5) {printf(“%d\n”,i); i++;} printf(“停止循环\n”); }
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档