【学习笔记】【C语言】循环结构-while

1. 简单使用

while ( 条件 )
{
    语句1;
    语句2;
    ....
}

如果条件成立,就会执行循环体中的语句(“循环体”就是while后面大括号{}中的内容)。然后再次判断条件,重复上述过程,直到条件不成立就结束while循环

while循环的特点:如果while中的条件一开始就不成立,那么循环体中的语句永远不会被执行.

可以省略大括号{},但是只会影响到while后面的第一条语句。不建议省略大括号。

while ( 条件 ) 语句1;

2.代码
 1 #include <stdio.h>
 2
 3 /*
 4  if (条件)
 5  {
 6
 7  }
 8
 9  while (条件)
10  {
11     循环体
12  }
13
14  运行原理
15  1.如果一开始条件就不成立,永远不会执行循环体
16  2.如果条件成立,就会执行一次循环体,执行完毕,再次判断条件是否成立......
17
18  break
19  直接结束整个while循环
20
21  continue
22  结束当前的循环体,进入下一次循环体的执行
23
24  */
25
26 int main()
27 {
28     // 1.先确定需要重复执行的操作
29
30     // 2.再确定约束条件
31
32     // 定义一个变量记录做的次数
33     int count = 0;
34
35     /*
36     while (count<50)
37     {
38         ++count;
39
40         if (count%10 != 0)
41         {
42             printf("做第%d次俯卧撑\n", count);
43         }
44     }*/
45
46     /*
47     while (count<50)
48     {
49         ++count;
50
51         if (count%10 == 0)
52         {
53             // 直接结束这一次循环体,进入下一次循环
54             continue;
55         }
56
57         printf("做第%d次俯卧撑\n", count);
58     }*/
59
60     while (count < 50)
61     {
62         ++count;
63
64         printf("做第%d次俯卧撑\n", count);
65
66         if (count == 20)
67         {
68             break;
69         }
70     }
71
72
73     return 0;
74 }

练习

 1 /*
 2  提示用户输入一个正整数n,计算1+2+3+…+n的和
 3  */
 4
 5 #include <stdio.h>
 6
 7 int main()
 8 {
 9     // 1.提示输入
10     printf("请输入一个正整数:\n");
11
12     // 2.接收输入
13     // 定义变量保存用户输入的整数
14     int n;
15     scanf("%d", &n);
16
17     if (n<=0)
18     {
19         printf("非法输入\n");
20         return 0;
21     }
22
23     // 3.计算
24     // (1 + n) * n / 2;
25     // 定义变量保存和
26     int sum = 0;
27     int number = 0; // 默认被加的数值
28
29     while (number < n)
30     {
31         number++;
32         sum += number; // 累加
33     }
34
35     printf("%d\n", sum);
36
37     return 0;
38 }
 1 /*
 2 题目:计算1~100中所有3的倍数的个数
 3 */
 4
 5 #include <stdio.h>
 6
 7 int main()
 8 {
 9     // 记录3的倍数的个数
10     int count = 0;
11
12     // 记录当前检查的数值
13     int number = 0;
14
15     while (number < 100)
16     {
17         number++;
18
19         // 说明number是3的倍数
20         if (number%3 == 0)
21         {
22             count++;
23         }
24     }
25
26     printf("1~100内3的倍数的个数:%d\n", count);
27 }

3.注意点

 1 #include <stdio.h>
 2
 3 int main()
 4 {
 5     /*
 6     while (10)
 7     {
 8         printf("哈哈哈哈\n");
 9     }*/
10
11     /*
12     int a = 10;
13     // while (a>0); 死循环
14     while (a>0)
15     {
16         a--;
17         printf("哈哈哈\n");
18     }*/
19
20     // 最简单的死循环
21     //while(1);
22
23     return 0;
24 }
 
 
时间: 2024-10-04 18:28:45

【学习笔记】【C语言】循环结构-while的相关文章

2014年7月17日学习笔记--PHP的循环结构学习

今天重新开始学习PHP, 为了学习PHP买了书,但书是一本大部头的书,不好带一直没有好好学习,我决定把书拆了分章来看,这样也方便带 也可以很快完成任务. 今天在linux mint 17上安装了lnmp 环境 和brackets工具,来学PHP,小的例子用vim来完成的. 记录一下自己美化的九九乘法表 代码如下: <?php     for($i=1;$i<=9;$i++){         for($j=1;$j<=9;$j++){             if($i>=$j){

iOS学习笔记---c语言第九天

高级指针 指向结构体变量的指针,称为结构体指针 可以使用->指向内容. %p打印地址 void pLenth(cPoint *p1,cPoint *p2) //求两点间的距离  用的开方函数sqrt()和平方函数pow(,) { float a = sqrt(pow((p1->x-p2->x), 2)+pow((p1->y-p2->y), 2)); printf("两点距离为%.2f\n",a); } //main.m中代码 #import <Fou

ios学习笔记---c语言第二天

一.bool布尔类型    c语言没有bool类型,oc里有bool类型 是一种非真即假的数据类型,布尔类型的变量只有yes和no两个值.yes表示表达式是真,no表示表达式是假. 在c语言中认为非0即为真. 分支语句中常用bool值做判断,判断执行if语句还是else语句. 循环结构中,也常使用bool值做判断,判断是否要执行循环. 注意事项: #define yes 1 #define no 0 计算机在识别时,yes就替换成1,no就替换成0. 二.关系运算符 >   >=   <

Swift学习笔记:类和结构

一.类和结构的异同 类和结构有一些相似的地方,它们都可以: 1. 定义一些可以赋值的属性: 2. 定义具有功能性的方法 3. 定义下标,使用下标语法 4. 定义初始化方法来设置初始状态 5. 在原实现方法上的可扩展性 根据协议提供某一特定类别的基本功能 1. 类还有一些结构不具备的特性: 2. 类的继承性 3. 对类实例实时的类型转换 4. 析构一个类的实例使之释放空间 5. 引用计数,一个类实例可以有多个引用 1. 定义语法 struct Name{ let firstName = "&quo

IOS学习笔记---C语言第四天

1 //?生成2个数组,每个数组都有10个元素,元素取值范围20-40之间,数组对应元素相 加,放到另外?一个数组中 2 #import <Foundation/Foundation.h> 3 4 int main(int argc, const char * argv[]) 5 { 6 7 int num1[10]={0},num2[10]={0},num3[10]={0}; 8 for (int i = 0; i<10; i++) { 9 num1[i]=arc4random()%2

java之jvm学习笔记十三(jvm基本结构)

java之jvm学习笔记十三(jvm基本结构) 这一节,主要来学习jvm的基本结构,也就是概述.说是概述,内容很多,而且概念量也很大,不过关于概念方面,你不用担心,我完全有信心,让概念在你的脑子里变成图形,所以只要你有耐心,仔细,认真,并发挥你的想象力,这一章之后你会充满自信.当然,不是说看完本章,就对jvm了解了,jvm要学习的知识实在是非常的多.在你看完本节之后,后续我们还会来学jvm的细节,但是如果你在学习完本节的前提下去学习,再学习其他jvm的细节会事半功倍. 为了让你每一个知识点都有迹

Swift学习笔记(11)--类与结构体

类与结构是编程人员在代码中会经常用到的代码块.在类与结构中可以像定义常量,变量和函数一样,定义相关的属性和方法以此来实现各种功能. 和其它的编程语言不太相同的是,Swift不需要单独创建接口或者实现文件来使用类或者结构.Swift中的类或者结构可以在单文件中直接定义,一旦定义完成后,就能够被直接其它代码使用. 注意:一个类的实例一般被视作一个对象,但是在Swift中,类与结构更像是一个函数方法,在后续的章节中更多地是讲述类和结构的功能性. 1.类和结构的异同 类和结构有一些相似的地方,它们都可以

iOS学习笔记---c语言学习第七天

结构体 结构体是一种自定义的数据类型 struct 结构体名 { 类型说明符  成员名: … 类型说明符  成员名: }: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { struct teacher{ char name[30]; char sex; int age; char course[30]; }; typedef struct teacher Teacher; Teacher c

Swift学习笔记五:循环和条件语句

一.循环语句 1. for循环 1) for -in 循环,对于数据范围,序列,集合等中的每一个元素,都执行一次 for a in 0...5{}    //循环迭代,从a=0到a=5,执行{}里的代码 注意:a只循环中存在,也就是出了{}a就不存在了 或者遍历数组 let a = [1,2,3] for b in a{} //循环迭代,从b=1到b=3 如果你不需要序列中的每一个值,可以使用_来忽略它,仅仅只是使用循环体本身: for _ in 0...5{}    //循环执行{}里的代码,

iOS学习笔记---c语言第十天

动态内存分配 一.存储区划分 从低到高(内存地址小----内存地址大)  :  代码区---常量区---静态区---堆区---栈区 栈内存 //凡是在函数体内定义的变量 都存储在栈区(包括形参). int a = 10;//a也是在栈区域里面 float b = 1.5;//b也是在栈区域里面 char c = 'b'; double d = 3.14; printf("%p %p %p %p\n",&a,&b,&c,&d); //栈的特点先进后出,先定