C学习笔记-流程控制
常用的流程图符号

- 起止框用于表示流程的开始或结束;
- 输入/输出框用平行四边形表示,在平行四边形内可以写明输入或输出的内容;
- 判断框用菱形表示,它的作用是对条件进行判断,根据条件是否成立来决定如何执行后续的操作;
- 处理框用矩形表示,它代表程序中的处理功能,如算术运算和赋值等;
- 流程线用实心单向箭头或直线表示,可以连接不同位置的图框,流程线的标准流向是从左到右和从上到下,可用直线表示,非标准流向的流程线应使用箭头指示方向;
- 连接点用圆形表示,用于流程图的延续。
在C语言中0代表假,非0代表真
顺序结构语句
最常见的执行结构,计算机语言往大了说都是属于顺序结构
顺序结构:所有语句从上到下顺序执行
选择结构语句
if条件语句
- if语句
if (条件语句)
{
//代码块
}

- if···else语句
if (判断条件)
{
//执行语句1
···
}
else
{
//执行语句2
···
}

- if···else if···else语句
else永远是和最近的一条if语句配对
if (判断条件1)
{
//执行语句1
}
else if (判断条件2)
{
//执行语句2
}
···
else if (判断条件n)
{
//执行语句n
}
else
{
//执行语句n+1
}

switch条件语句
switch作为一种条件选择语句,主要适用于具体值的判断,而if适用于范围值的判断,侧重点不同。
switch是为多重选择准备的,遇到break语句,switch就终端执行
switch (表达式)
{
case 目标值1:
//执行语句1
break;
case 目标值2:
//执行语句2
break;
···
case 目标值n:
//执行语句n
break;
default:
//执行语句n+1
break;
}
switch将表达式的值与case中的值对比,执行与之相匹配的case内语句,直到遇到break退出。
循环结构语句
在符合某一条件的情况下,不断地重复某一段代码,这种叫做循环语句
while循环语句
while (循环条件)
{
//执行语句
···
}

do-while循环语句
do
{
//执行语句
···
} while(循环条件);

for循环语句
for(初始化表达式; 循环条件; 操作表达式)
{
//执行语句
···
}
循环嵌套
循环嵌套在各种语言中都很常用
外层循环控制行,内层循环控制列
*
**
***
****
*****
******
*****
****
***
**
*
int i;
int j;
for (i = 0; i < 11; i++)
{
if (i < 6)
{
for (j = 0; j <= i; j++)
{
printf("*");
}
}
else
{
for (j = 11 - i; j > 0; j--)
{
printf("*");
}
}
printf("\n");
}
*
***
*****
*******
*********
int i;
int j;
for (i = 0; i < 5; i++)
{
for (j = 4 - i; j > 0; j--)
{
printf(" ");
}
for (j = 0; j < (i - 1) * 2 + 3; j++)
printf("*");
printf("\n");
}
跳转语句(break、goto、continue)
break语句
在switch条件语句和循环语句中都可以使用break语句
当它出现在switch条件语句中时,作用是终止某个case并跳出switch结构
当它出现在循环语句中,作用是跳出当前循环语句,执行后面的代码goto语句
尽量不要在程序当中使用goto语句
当break语句出现在嵌套循环中的内层循环时,它只能跳出内层循环,如果想要跳出外层循环则需要对外层循环添加标记,然后使用goto语句
int i = 0;
start:
scanf("%d", &i);
if(i == 1)
goto start;
- continue语句
在循环语句中,如果希望立即终止本次循环,并执行下一次循环,此时就需要使用continue语句
C学习笔记-流程控制的更多相关文章
- JavaScript学习笔记——流程控制
javascript流程控制流程:就是程序代码的执行顺序.流程控制:通过规定的语句让程序代码有条件的按照一定的方式执行. 一.顺序结构 按照书写顺序来执行,是程序中最基本的流程结构. 二.选择结构(分 ...
- Go语言学习笔记-流程控制(二)
Go语言流程控制 字典类型Map 1.上节遗留:map字典类型 变量声明:var myMap map[string] PersonInfo 其中,myMap是变量名,string是键的类型,Perso ...
- go学习笔记-流程控制(if/else,for/range)
流程控制(if/else,for/range) if if条件判断语句的语法概括起来就是:如果满足条件就做某事,否则做另一件事. func testIf() { num := 10 if num &l ...
- python学习笔记---流程控制
二.流程控制 2.1选择结构与语句 2.1.1 最简单的if语句 注意:if语句后边必须加上冒号 满足条件后.可以执行多条语句. #最简单的if语句 print("请输入一个既能整除2,又能 ...
- Java学习笔记-流程控制
在Java中,最常见的就是顺序结构,另外,还有其他的一些的结构,选择,循环等,这些程序结构的加入,使得程序代码更有选择性 判断结构 if语句 三种格式: if(条件表达式) { 执行语句; } if( ...
- TCP/IP学习笔记17--TCP-- 窗口控制 重发控制 流控制
事业无穷年 -- 韩愈 利用窗口控制提高速度: TCP传输数据是,以一个段为单位(每次发送一个数据包),每发一个段需要一次确认应答,这样就难免存在这样的缺点:包的往返时间越长,通信性能就越低. 为解决 ...
- luogg_java学习_03_流程控制及循环结构
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 程序流程控制 顺序结构 分支结构:if-else,sw ...
- Python学习(七) 流程控制if语句
在Python中流程控制if语句采用如下格式: if expression : statement elif expression : statement elif expression : stat ...
- python学习Day4 流程控制(if分支,while循环,for循环)
复习 1.变量名命名规范 -- 1.只能由数字.字母 及 _ 组成 -- 2.不能以数字开头 -- 3.不能与系统关键字重名 -- 4._开头有特殊含义 -- 5.__开头__结尾的变量,魔法变量 - ...
随机推荐
- BZOJ 4012 [HNOI2015]开店 (区间修改 永久化标记 主席树)
讲得好啊 主席树区间修改了,每一次遇到整区间就打永久化标记(不下传,访问的时候沿路径上的标记算答案)然后returnreturnreturn,那么每修改一次只会访问到lognlognlogn个节点,再 ...
- vue 解析时表达式闪烁的问题
现象: 在使用 vuejs.angularjs 开发时,经常会遇见浏览器页面闪现表达式 ({{ express }} ), 或者是模块(div)的闪烁. 原因: 由于 JavaScript 去操作DO ...
- WebUI自动化之Java语言讲解
Java学习网站: default是兜底逻辑,以上条件都不符合时,如何处理. break是终止循环,continue是终止本次循环:
- 洛谷 P4933 大师
题面 (实名推荐:本题的出题人小哥哥打球暴帅哦!(APIO/CTSC/WC的时候一起打过球w,而且大学在我隔壁喔) ) 没仔细看数据范围的时候真是摸不着头脑...还以为要 O(N^2) dp 爆锤.. ...
- 20190908 NOIP 模拟40
考试过程: 刚看完题,发现T1是个类lis 问题,但要求$O(nlogn)$,应该是个数据结构优化dp,T2应该是个数据结构,T3是个字符串?没有匹配,不会是后缀数组吧,这是NOIP模拟啊,可能是个d ...
- 【原创】洛谷 LUOGU P3371 【模板】单源最短路径
P3371 [模板]单源最短路径 题目描述 如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度. 输入输出格式 输入格式: 第一行包含三个整数N.M.S,分别表示点的个数.有向边的个数.出 ...
- DPC究竟是什么
DPC究竟是什么 DPC是“Deferred Procedure Call”的缩写,意为推迟了的过程(函数)调用.这是因为,逻辑上应该放在中断服务程序中完成的操作并非都是那么紧迫,其中有一部分可能相对 ...
- java线程之sleep
翻译:https://www.journaldev.com/1020/thread-sleep-java 简述 Thread .sleep()方法用来暂停当前线程的执行,以毫秒为单位.还有另一个重载方 ...
- canvas实现水印
最近遇到一个需求,给所有页面加水印(登录人),不影响其他点击等功能的使用,目的是防止信息外漏,当时就在想:这年头,PS就不说人人都能使用,谁手机还没个涂鸦功能,防不了,但是就是这么个需求,那就实现吧! ...
- 如何在linux中发送邮件,使用163邮箱发信。
linux中,可以使用mail命令往外发送邮件,在使用前,只需要指定如下简单配置即可,这里演示用 163.com 邮箱发送至 qq.com 编辑 /etc/mail.rc,写入下方的参数 se ...