C语言流控制命令的总结

基本概念:

  • C语言中,自顶向下的的代码的流程叫做程序流
  • 能够改变程序流顺序的语句叫做流控制命令

我为什么要写这篇文章

在学习C语言的过程中,经常会用到条件语句和循环语句这些改变程序流顺序的语句,所以需要熟练地掌握,但是我发现,即使亲手写完代码之后,也很容易 forget 其中的语法。比如 switch语句中,每一种case的常数后需要加冒号;break语句需要分号;do语句中

do { statement
}
while(condition);

其中的 while 语句的分号不能忘记。而这些知识很容易混淆,所以写了这篇文章,提醒自己。

正文

C语言中有两种语句能够改变程序流的走向,一种是条件语句,一种是循环语句。他们都是需要条件表达式的帮助,而条件表达式是由比较运算符和逻辑运算符和其他元素共同组成的。

条件表达式:通过判断式子的比较运算符和逻辑运算符的左边与右边的关系,返回一个TURE 或者 FALSE 值。
比较运算符: == ,<,>,<=,>=等等
逻辑运算符:&&,||,!等等

常见的条件语句有:

if语句
基本的语法如下:

if ( condition ){
statements}

其中condition是条件表达式,statement是执行语句。

if...else语句
基本的语法如下:

if( condition ) {
statements}
else {
statements}

switch 语句
基本的语法如下

switch(expression) {
case constant:
statements;
case constant:
statements;
default:
statements;
}

其中 expression 是表达式, constant是常数。

常见的循环语句如下:
for语句

for(declaration; condition; increment){
statements
}

其中declaration 指的是对标签变量的声明,condition指的是满足的最终条件,increment 是标签变量的增量语句。

while语句

while(condition) {
statements
}

do语句

do{
statements
} while (condition);

另外还有 break 语句和 continue 语句,两者都能用于全部的循环语句中,continue不能用于条件语句中,但是 break 能够用在 switch 语句中,如下:

switch(expression){
case constant1:
statements;
break;
case constant2;
statements;
break;
}

C语言流控制命令的总结的更多相关文章

  1. 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出

    [源码下载] 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 预处理命令 输入 ...

  2. C 语言 字符串命令 strstr()的用法 实现将原字符串以分割串分割输出

    C 语言 字符串命令 strstr()的用法 实现将原字符串以分割串分割输出 strstr() 命令是在原字符串中查找指定的字符串第一次出现的地址,用这个特性可以实现字符的分割,判断是否包涵等功能: ...

  3. C 语言入门第八章--C语言预处理命令

    例如:#include ,这种以#号开头的命令称为预处理命令. ===C语言宏定义(#define的用法)==== #define 叫做宏定义命令,它也是C语言预处理命令的一种.所谓宏定义,就是用一个 ...

  4. Go语言常用命令介绍

    go build go build 命令主要是用于测试编译.在包的编译过程中,若有必要,会同时编译与之相关联的包. 如果是普通包,当你执行go build命令后,不会产生任何文件. 如果是main包, ...

  5. C语言预处理命令总结大全

    C程序的源代码中可包括各种编译指令,这些指令称为预处理命令.虽然它们实际上不是C语言的一部分,但却扩展了C程序设计的环境.本节将介绍如何应用预处理程序和注释简化程序开发过程,并提高程序的可读性.ANS ...

  6. c语言编译命令

    第14章 预处理及用户配置文件 • 预处理命令通常在程序编译时进行一些符号处 理,其并不执行具体的硬件操作.C51语言中的预 处理命令主要有宏定义指令.文件包指令和条 件编译指令,还有其他一些调试时使 ...

  7. [C语言]在命令行编译执行程序

    ----------------------------------------------------------------------------------------- [开始] 1. 在M ...

  8. C语言预处理命令详解

    一  前言 预处理(或称预编译)是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作.预处理指令指示在程序正式编译前就由编译器进行的操作,可放在程序中任何位置. 预处理是C语言的一个重要功能 ...

  9. [日常] Go语言圣经-命令行参数

    1.编译 go build hello.go 2.go get gopl.io/ch1/helloworld 命令,就会从网上获取代码,并放到对应目录中 下载的代码会放在$GOPATH/src/gop ...

随机推荐

  1. sentos7为例添加python3和python2共存

    转载:https://www.cnblogs.com/JahanGu/p/7452527.html 1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命 ...

  2. Linux上的oracle巡检脚本

    修改自大神博客:http://www.cnblogs.com/jyzhao/p/5364049.html 脚本巡检的优化:自动化,节省时间. 脚本需加强:巡检结果中有大量的sqlplus连接信息,后期 ...

  3. BSGS算法学习笔记

    从这里开始 离散对数和BSGS算法 扩展BSGS算法 离散对数和BSGS算法 设$x$是最小的非负整数使得$a^{x}\equiv b\ \ \ \pmod{m}$,则$x$是$b$以$a$为底的离散 ...

  4. topcoder srm 455 div1

    problem1 link 令$f[x1][y1][x2][y2]$表示矩形(x1,y1)(x2,y2)中能选出的最大值.dp即可. problem2 link 这个题应该有更好的递推公式. 我的做法 ...

  5. 关于二进制——lowbit运算

    lowbit(n)意思即为找出n在二进制表示下最后一位1即其后面的0所组成的数值,别的东西算法书上有,这里提出一个重要的公式 lowbit(n)=n&(~n+1)=n&(-n),这个有 ...

  6. POJ 3264 Balanced Lineup (线段树查找最大最小值)

    http://poj.org/problem?id=3264 题意:给你一个长度为n的序列a[N] (1 ≤ N ≤ 50000),询问Q(1 ≤ Q ≤ 200000) 次,每次输出[L, R]区间 ...

  7. centos 查看USB接口的版本

    # lsusbBus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 002 Device 001: ID 1d6b:000 ...

  8. 4-Five-Youth

      ①People are always talking about 'the problem of youth'. If there is one--which I take leave to do ...

  9. Unity3D学习笔记(二十六):MVC框架下的背包系统(1)

    MVC背包 需求: 1.背包格子的装备是可以拖动的 2.装备栏的装备也是可以拖动的 3.当背包格子的装备拖动到装备栏时,如果是装备类型和装备栏类型是一致的能装上 4.背包的装备是按照顺序放在格子中的, ...

  10. 嵌入式Linux要学哪些东西?你真的造吗?

    嵌入式Linux要学哪些?一些人总在寻思,怕走了弯路,又怕学的东西离企业需求远.那么今天就请华清远见高级讲师曹大神告诉你,9点浅析嵌入式学习步骤.下面是他本人亲笔. 1.要学习Linux,首先要会用, ...