C语言流控制命令的总结
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语言流控制命令的总结的更多相关文章
- 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出
[源码下载] 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 预处理命令 输入 ...
- C 语言 字符串命令 strstr()的用法 实现将原字符串以分割串分割输出
C 语言 字符串命令 strstr()的用法 实现将原字符串以分割串分割输出 strstr() 命令是在原字符串中查找指定的字符串第一次出现的地址,用这个特性可以实现字符的分割,判断是否包涵等功能: ...
- C 语言入门第八章--C语言预处理命令
例如:#include ,这种以#号开头的命令称为预处理命令. ===C语言宏定义(#define的用法)==== #define 叫做宏定义命令,它也是C语言预处理命令的一种.所谓宏定义,就是用一个 ...
- Go语言常用命令介绍
go build go build 命令主要是用于测试编译.在包的编译过程中,若有必要,会同时编译与之相关联的包. 如果是普通包,当你执行go build命令后,不会产生任何文件. 如果是main包, ...
- C语言预处理命令总结大全
C程序的源代码中可包括各种编译指令,这些指令称为预处理命令.虽然它们实际上不是C语言的一部分,但却扩展了C程序设计的环境.本节将介绍如何应用预处理程序和注释简化程序开发过程,并提高程序的可读性.ANS ...
- c语言编译命令
第14章 预处理及用户配置文件 • 预处理命令通常在程序编译时进行一些符号处 理,其并不执行具体的硬件操作.C51语言中的预 处理命令主要有宏定义指令.文件包指令和条 件编译指令,还有其他一些调试时使 ...
- [C语言]在命令行编译执行程序
----------------------------------------------------------------------------------------- [开始] 1. 在M ...
- C语言预处理命令详解
一 前言 预处理(或称预编译)是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作.预处理指令指示在程序正式编译前就由编译器进行的操作,可放在程序中任何位置. 预处理是C语言的一个重要功能 ...
- [日常] Go语言圣经-命令行参数
1.编译 go build hello.go 2.go get gopl.io/ch1/helloworld 命令,就会从网上获取代码,并放到对应目录中 下载的代码会放在$GOPATH/src/gop ...
随机推荐
- 详解重定向(HTTP状态码301/302/303/307/408)附例子
本文为原创文章,转载请注明出处. 今天打算好好把状态码301.302.303.307.308好好撸一遍,并会测试下一些例子. 状态码的解释 我们都知道重定向与这几种状态码有关,来看下这几种HTTP状态 ...
- [内核驱动] DOS路径转化为NT路径
转载:http://blog.csdn.net/qq_33504040/article/details/78468278 最近在做一个文件过滤驱动程序,禁止访问指定目录或文件.想要从R3给R0发命令和 ...
- topcoder srm 410 div1
problem1 link 不包含$gridConnections$ 的联通块一定是连在所有包含$gridConnections$的联通块中最大的那一块上. import java.util.*; i ...
- linux内核中宏container_of是干什么的?
Linux Kernel Version 4.14 1. container_of是干什么的? 已知一个结构体中某个成员的首指针,那么就可以通过宏container_of来获得此结构体的首指针 2 先 ...
- extjs使用笔记-21
yii是后台php框架 而yui是前端界面框架,是ajax框架 Extjs是建立在yui基础上的.不要搞混了. jquery的ready方法,是在文档已经加载完毕\图像完全显示后, 才载入执行的. 由 ...
- Spring与MyBatis面试
Spring: https://www.cnblogs.com/wang-meng/p/5701982.html https://www.cnblogs.com/liangyihui/p/591777 ...
- 比赛总结——atcoder beginner contest 109
第一次AK的ABC 虽然题非常简单 但是值得纪念一下 T1 一道很水的题 不存在做法 纯粹乱跑 但是我把Yes打成YES了,哭唧唧 #include <cstdio> #include & ...
- Kubernetes相关概念
This page explains how Kubernetes objects are represented in the Kubernetes API, and how you can exp ...
- 用Qemu模拟vexpress-a9 --- 配置 qemu 的网络功能
转载:http://wiki.sylixos.com/index.php/Linux%E7%8E%AF%E5%A2%83%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97 环境介 ...
- windows 如何不显示带点的文件名、文件夹?
这些以点开头的文件夹和文件是为了在 linux 中隐藏的.但是在 windows 中如何不显示他们? 资源管理器: CMD: