C语言从头学13——流程控制(二)

接着学习流程控制,并继续上一篇的编号。

4、while 语句

while语句用于循环结构,满足条件时,不断执行循环体,直到条件不满足时退出。如果

一直满足循环条件无法结束循环,会陷入死循环,这是应当避免的。

格式:

while (条件表达式)

{

语句1;

......

语句n;

}

举例程序:

cpp 复制代码
  #include<stdio.h>
  int main(void)
  {
     int i = 0;
     while (i < 26) //如果条件不成立则不能进入循环体
     {
        printf(" %c", 65+i); //利用ASCII值显示小写字母,a到z的ASCII码为097~122
        printf(" %c\n", 97+i); //利用ASCII值显示大写字母,A到Z的ASCII码065~090
        i++; //如果没有这条语句,会陷入死循环
     }
     getchar(); //屏显暂停
     return 0;
  }

补充:如果将条件表达式设成 "1" 即循环条件总是为真,这样的循环有用吗?回答是有用的,我们可以在循环体内设置一个 if 语句,当退出条件满足时,在if语句中运行 break 就退出了循环。这种用法多用于菜单项的循环,只有选择"退出"或"结束"时才运行break。(break后边详细介绍)

5、do...while结构

这种结构也叫直到型循环,即先不管是否符合循环条件,上来先执行一次循环体,然后再看是否满足循环条件是继续循环还是结束。

格式:

do {

语句1;

......

语句n;

} while (条件表达式)

这种结构除了直接进入循环外,与while语句一样,也可以设成无限循环再用 if 语句中的break退出。举例小程序如下:

cpp 复制代码
  #include<stdio.h>
  int main(void)
  {
      int i = 0;
      do {  //不管循环条件如何,先进入循环体
          printf("i=%d\n",i); //显示i值
          if (i == 10) break; //定义退出条件,退出条件也可以放到while后边的括号中(i<=10)
          i++;
      }  while (1);
      getchar();//屏显暂停
      return 0;
  }

6、for语句

for语句是编程过程中使用最频繁的循环结构,适用于精确控制循环次数,经常用于为数组赋值、显示数组内容等场合。

格式:

for ( 初始表达式; 循环条件判断; 循环变量处理表达式 )

{

语句1;

.....

语句n;

}

代码举例:

cpp 复制代码
   int x[10]; //声明一个10个元素的int型数组
   for(int i=0;i<10;i++)
   {
      x[i]=i; //为x[i]赋值
      printf("%i\n",x[i]);\\每行一个显示x[i]
   }

补充:for 循环体有两个或两个以上语句时,我们会给循环体语句用大括号"{}"括起来,但对于

一个语句的情况,可以不用大括号括起来。此处建议大家:对于初学者,无论是一句还是多句,

干脆都用大括号括起来;如实在不想用"{}"括起来,循环体语句要和循环条件放到一行,这样看上去逻 辑更清楚。这些也适用使用 if 语句等。

相关推荐
鱼嘻2 小时前
Linux自学day23-进程和线程
linux·服务器·c语言·进程和线程
BUG 劝退师2 小时前
C语言预处理学习笔记
c语言·笔记·学习
小立爱学习3 小时前
Linux 内核自旋锁spinlock(四)--- queued spinlock
linux·c语言
我爱蛋蛋后6 小时前
Linux驱动开发之音频驱动与基础应用编程
linux·c语言·驱动开发·音视频
卷卷的小趴菜学编程6 小时前
c++之多态
c语言·开发语言·c++·面试·visual studio code
大白的编程日记.8 小时前
【C++笔记】C+11深度剖析(三)
c语言·开发语言·c++
和光同尘@9 小时前
56. 合并区间 (LeetCode 热题 100)
c语言·开发语言·数据结构·c++·算法·leetcode·职场和发展
YH_DevJourney9 小时前
Linux-C/C++《C/9、信号:基础》(基本概念、信号分类、信号传递等)
linux·c语言·c++
让我们一起加油好吗10 小时前
【数学】数论干货(疑似密码学基础)
c语言·visualstudio·密码学
许科大13 小时前
【笔记ing】C语言补充、组成原理数据表示与汇编实战、操作系统文件实战(高级阶段)
c语言