程序结构与控制语句
Python语言基础 第3章 流程控制语句
if 表达式1: 语句块1
elif 表达式2: 语句块2
……
elபைடு நூலகம்e: 语句块n
if语句的嵌套
简单的if语句 if…else语句 if…elif…else语句
if 表达式1:
if 表达式2: 语句块2
else: 语句块3
else: 语句块1
条件表达式
循环语句
while 循环
循环 嵌套
1
3
for 循环
2
while 条件表达式: 循环体
for循环
for 迭代变量 in 对象: 循环体
起始值(包括)
range(start,end,step)
结束值(不包括)
循环嵌套
跳转语句
break 语句
1
continue 语句
2
continue 语句
pass空语句
[ 概念]
pass语句,表示空语句。它 不做任何事情,一般起到占位作 用。
流程控制语句
主讲人:王国辉
条件表达式 选择语句
程序结构
循环语句 跳转语句 pass空语句
程序结构
选择语句
简单 的if 语句
1
if… elif… else语句
3
if… else语
句
2
if语句 的嵌套
4
if 表达式: 语句块
if…else语句
if 表达式: 语句块1
else: 语句块2
if…elif…else语句
程序的基本概念
程序的基本概念程序的基本概念程序是一系列按照特定顺序组织的指令集合,用于实现特定的任务。
无论是在计算机领域还是其他领域,程序都是实现复杂任务所必需的重要工具。
本文将从程序的定义、组成部分、功能、编程语言以及开发过程等方面,对程序的基本概念进行详细阐述。
一、程序的定义程序是一组按照特定的语法规则编写的指令集合,用于完成某种特定的计算机任务。
它可以被计算机执行,实现需要完成的功能。
程序可以通过编程语言的形式形成,包含一系列的命令和算法,告诉计算机如何操作数据进行运算。
二、程序的组成部分程序由多个基本组成部分组成,包括输入、输出、变量、算法、控制结构等。
输入是程序运行前提供的数据,输出是程序运行后产生的结果。
变量用于保存和操作数据,算法描述了具体的计算步骤,控制结构决定了程序的执行流程。
三、程序的功能程序的功能是根据程序的设计目标决定的,它可以实现各种不同的任务。
例如,一个简单的程序可以实现两个整数的加法运算,一个复杂的程序可以进行复杂计算、数据处理、图像处理等。
程序的功能取决于程序员的设计能力和编程技术。
四、编程语言编程语言是程序编写的工具,它提供了一组语法和规则,用于编写程序。
常见的编程语言有C、C++、Python、Java等。
不同的编程语言有不同的特点和应用领域,选择合适的编程语言对于程序的开发非常重要。
编程语言通常包括以下几个要素:1. 语法:定义了合法的语句和结构,用于组织和表示程序逻辑。
2. 数据类型:定义了不同类型的数据,如整数、浮点数、字符等。
3. 变量:用于存储和操作数据,具有特定的数据类型和作用域。
4. 运算符:用于对数据进行运算和操作,如算术运算符、逻辑运算符等。
5. 控制结构:用于控制程序的执行流程,如条件语句、循环语句等。
充分理解编程语言的特点和使用方式,对于程序的编写和调试非常重要。
五、程序开发过程程序开发是一种创造性的过程,包括需求分析、设计、编码、测试等环节。
1. 需求分析:明确程序的功能和要求,确定输入、输出、数据结构等。
c语言中语句的作用
c语言中语句的作用C语言中的语句是一种用来表达特定功能或操作的代码片段。
它们可以用来实现算法、控制程序流程、执行操作等。
下面是一些常见的C语言语句及其作用。
1. 赋值语句(Assignment Statement):用来将一个值或表达式赋给一个变量。
例如:`a = 10;`2. 条件语句(Conditional Statement):用来根据条件来选择不同的执行路径。
常见的条件语句有if语句、switch语句等。
例如:```if (x > 0) {printf("x is positive");} else {printf("x is negative or zero");}```3. 循环语句(Loop Statement):用来重复执行一段代码,直到满足退出条件。
常见的循环语句有for循环、while循环和do-while 循环。
例如:```for (int i = 0; i < 10; i++) {printf("%d\n", i);}```4. 函数调用语句(Function Call Statement):用来调用已经定义好的函数,并执行函数中的代码。
例如:`printf("Hello, world!");`5. 返回语句(Return Statement):用来从函数中返回一个值,并结束函数的执行。
例如:```int square(int x) {return x * x;}```6. 输入输出语句(Input/Output Statement):用来从用户输入获取数据或将数据输出到屏幕或文件中。
例如:`scanf("%d", &num);`和`printf("The result is %d\n", result);`7. 断言语句(Assertion Statement):用来在程序中插入断言,判断一个条件是否成立,如果不成立则终止程序执行。
c语言程序设计,(控制语句)
3第三章控制语句第三章控制语句3.1程序的基本结构程序的基本结构有三种:顺序结构、分支结构、循环结构前面的例子都是顺序结构,大量的实际问题需要通过各种控制流程来解决。
分支和循环结构的控制语句有:条件语句:if语句开关语句:switch语句循环语句:for语句、while语句、do while语句转移语句:break、continue、goto语句•简单语句:均是以“;”结尾的语句。
z=x+y;c=getchar();•复合语句:复合语句是用花招号“{ }”把“说明”和若干个有序的简单语句组合在一起而构成的语句集合。
其一般形式是:{<内部数据说明><语句表>}•复合语句实例:{int i,j,k;i=i+1;j=j*2;i=k<<j;}•空语句:空语句的含义是什么动作都不执行,语句本身仅有一个分号。
while (putchar(getchar())!='\0'); 空语句选择结构(分支结构)◆“选择结构”也可以叫做“分支结构”。
在一个合理的“选择结构”中,总是先进行某个条件的判断,然后根据判断的结果选择执行预先设定的操作。
◆要想实现“选择结构”,需要2个条件:①能表达条件判断的运算符;②能实现判断并选择的控制语句。
A B?Yes No ab3.3 if 语句if 语句的三种形式 if 语句的嵌套if 语句◆if 语句是一种选择控制语句,而且是条件分支控制语句,即总是先进行一个条件的判断,然后根据判断的结果(成立或不成立)选择执行预先设定的操作。
◆if 语句中的条件判断都是用一个表达式来表示的。
在执行if语句时,会求解这个表达式的逻辑值,因为这个表达式的逻辑值代表了判断的结果:值为“T”,判断成立,值为“F”,判断不成立。
因此,if 语句根据判断的结果(成立或不成立)选择执行预先设定的操作,实际上是根据条件判断表达式的逻辑值是“真”是“假”来选择的。
第四章 结构化程序设计的三种结构
第四章结构化程序设计的三种结构4.1 顺序结构程序设计一、结构化程序设计的程序结构顺序结构、分支结构/选择结构、循环结构二、C语言语句1、9种控制语句2、表达式语句3、特殊语句三、格式化输出--printf()函数printf()函数的作用:向计算机系统默认的输出设备(一般指终端或显示器)输出一个或多个任意类型的数据。
printf()函数的一般格式printf("格式字符串" [,输出项表]);1、"格式字符串"也称"转换控制字符串",可以包含三种字符(1)格式指示符。
格式指示符的一般形式如下:%[标志][宽度][.精度][F|N|h|L][类型]常用的标志字符如表3-1所示,常用的宽度指示符如表3-2所示,常用的精度指示符如表3-3所示,长度修饰符如表3-4所示,类型转换字符如表3-5所示。
(2)转义字符'\n'就是转义字符,输出时产生一个"换行"操作。
转义字符通常起控制作用(3)普通字符──除格式指示符和转义字符之外的其它字符。
格式字符串中的普通字符,原样输出。
例如printf("radius=%f\n", radius);语句中的"radius="是普通字符。
2.输出项表输出项表是可选的。
如果要输出的数据不止1个,相邻2个之间用逗号分开。
下面的printf()函数都是合法的:(1)printf("I am a student.\n");(2)printf("%d",3+2);(3)printf("a=%f b=%5d\n", a, a+3);必须强调:"格式字符串"中的格式指示符,必须与"输出项表"中、输出项的数据类型一致,否则会引起输出错误3、格式指示符输出不同类型的数据,要使用不同的类型转换字符。
程序设计语言的基本成分
程序设计语言的基本成分
面向对象程序设计语言的基本成分包括:数据类型、变量声明、控制
结构、函数、类和对象、继承、多态、接口、模块、包等等。
(1)数据类型:指程序中使用的不同类型数据,典型的数据类型有:
整数、实数、字符串、布尔型、空值等。
(2)变量声明:指的是在程序开头把程序里面所使用的变量用明确的
名字进行声明。
(3)控制结构:控制结构是程序语言的基本组成部分,通过控制语句
可以实现算法中的分支结构,常见的控制结构有:循环结构、条件判断结构、异常处理结构等。
(4)函数:函数是把程序的某个部分封装,用来实现特定功能的代码。
(5)类和对象:类是一种抽象的概念,是对特定类型对象的抽象描述;对象是实际存在的、具有特定属性和行为的实体。
(6)继承:指的是一个类可以从已经存在的类中继承属性和行为,也
就是说,一个类可以从另一个类中继承已经定义的属性和行为,以减少代
码的重复编写。
(7)多态:指的是同一操作作用于不同的对象,可以有不同的解释,
即相同的操作对于不同的对象可以有不同的实现结果。
程序设计语言中常见的三种控制结构
程序设计语言中常见的三种控制结构在程序设计语言中,控制结构是指用于控制程序执行流程的语句或语法。
常见的控制结构有三种,分别是顺序结构、选择结构和循环结构。
一、顺序结构顺序结构是指程序按照代码的书写顺序依次执行,没有任何跳转或分支。
这种结构是最简单的结构,也是程序中最基本的结构。
在顺序结构中,每一条语句都会被依次执行,直到程序结束。
例如,下面的代码就是一个简单的顺序结构:```a = 1b = 2c = a + bprint(c)```这段代码中,首先给变量a赋值为1,然后给变量b赋值为2,接着将a和b相加并将结果赋值给变量c,最后输出变量c的值。
这些语句按照书写顺序依次执行,没有任何跳转或分支。
二、选择结构选择结构是指程序根据条件的不同而选择不同的执行路径。
在选择结构中,程序会根据条件的真假来决定执行哪一条语句或语句块。
常见的选择结构有if语句和switch语句。
1. if语句if语句是最常见的选择结构,它的语法如下:```if 条件:语句块1else:语句块2```其中,条件是一个表达式,如果表达式的值为True,则执行语句块1;否则执行语句块2。
if语句可以嵌套使用,例如:```if 条件1:语句块1elif 条件2:语句块2else:语句块3```这段代码中,如果条件1为True,则执行语句块1;如果条件1为False,但条件2为True,则执行语句块2;否则执行语句块3。
2. switch语句switch语句是一种多分支选择结构,它的语法如下:```switch 表达式:case 值1:语句块1breakcase 值2:语句块2break...default:语句块n```其中,表达式是一个值,case后面跟着的是一个常量或表达式,如果表达式的值等于case后面的值,则执行对应的语句块。
如果没有任何一个case的值与表达式的值相等,则执行default后面的语句块。
break语句用于跳出switch语句。
C语言常见几种流程控制语句
C语言常见几种流程控制语句
1.顺序结构:程序按照代码的先后顺序依次执行,没有特殊的控制语句。
2.选择结构:根据条件的真假选择是否执行段代码,常见的选择结构有:
- if语句:根据条件判断是否执行段代码。
- switch语句:根据不同的取值执行不同的代码。
3.循环结构:根据条件的真假重复执行段代码
- for语句:根据循环条件重复执行段代码,一般用于已知循环次数的情况。
- while语句:根据循环条件重复执行段代码,一般用于不知道具体循环次数的情况。
- do-while语句:先执行一次代码,再根据循环条件重复执行段代码,一般用于至少需要执行一次的情况。
除了以上常见的流程控制语句,C语言还提供了一些其他的流程控制语句,如break语句用于结束当前循环,continue语句用于跳过本次循环的剩余代码等。
SAPABAP基本语法介绍
SAPABAP基本语法介绍ABAP(Advanced Business Application Programming)是SAP (System, Applications, and Products in Data Processing)系统最常用的编程语言之一,主要用于SAP软件开发和定制。
ABAP具有强大的功能和灵活性,可用于创建和维护企业应用程序,包括各种业务流程和数据处理。
在本文中,我将介绍ABAP的基本语法和一些常见的编程概念。
1.ABAP程序结构ABAP程序由多个模块组成,每个模块都是独立的功能单元。
一个ABAP程序通常由一个开始模块和若干子模块组成。
开始模块包含程序的整体逻辑,而子模块用于实现程序的具体功能。
2.声明变量在ABAP中,变量需要先声明后才能使用。
变量可以是内部表、字段符号、工作区、宏定义等。
声明变量时需要指定数据类型和名称。
例如:DATA: lv_name TYPE string.3.控制语句ABAP支持多种控制语句,用于实现条件判断、循环和跳转等功能。
常见的控制语句包括IF语句、CASE语句、DO循环和WHILE循环等。
例如:WRITE: 'Number is 1'.WRITE: 'Number is 2'.ELSE.WRITE: 'Number is neither 1 nor 2'.ENDIF.4.数据操作ABAP提供了丰富的数据操作函数,可用于对数据进行处理和转换。
例如,可以使用CONCATENATE函数将多个字符串连接在一起,使用SUBSTRING函数获取字符串的子串,使用REPLACE函数替换字符串中的内容等。
5.内部表ABAP中的内部表类似于其他编程语言中的数组或列表,用于存储和处理数据。
内部表可以是标准表、排序表、哈希表等类型。
可以使用内部表来读取、修改和删除数据。
例如:SELECT * FROM kna1 INTO TABLE lt_customers WHERE land1 ='US'.6.函数模块和方法ABAP中的函数模块类似于其他编程语言中的函数或方法。
第5章 程序控制语句
5.3.2 while循环 循环
while循环的功能和for循环的功能相同,可以将while循环看 作是for循环的简化版本,也是一个循环语句。while循环 的基本格式如下。 while (可返回布尔类型表达式) { 相关执行语句; } 如果可返回布尔类型表达式的值是“true”,则会执行相关的 执行语句,并且会重新来判断该表达式的值,如果值仍为 “true”,则重新执行相关的语句。一直循环执行到表达 式的值为“false结构,语句可以按照出现的 顺序来执行,其中没有跳转或者判断,执行到程序的结束 为止。
5.2 条件语句
选择结构也是分支结构,其中包括条件判断语句。可以根据 一个判断表达式的结果来选择不同的分支执行语句,可以 根据不同的条件来执行不同的动作。条件判断语句包括if 语句和switch语句。
5.2.1 If语句 语句
有时候,我们对待一个事情,总是想,如果事情向这个方向发 展的话,我们该怎么做,如果向另一个方向发展,我们又 该则怎么去做。在程序中,也有这样的语句。就是if语句。 用于判断条件。 if语句是最简单的条件判断语句。if语句的基本语法格式如下。 if(布尔表达式){ //语句1 } //语句2
5.3 循环语句
高中的时候,为了学习英语,同学们会买一个复读机,用于 反复的读一段文字或者是一个单词。在程序中,有时候也 需要对某一段代码进行反复的操作,这时就需要使用到循 环语句。其中包括有for循环的while循环。
5.3.1 For循环 循环
循环语句可以使计算机重复的执行某一段代码,同时也可以 通过指定的终止条件来控制程序的无线循环。For循环时 最常用的一个循环语句,其语法如下。 For(表达式1;可返回布尔值的表达式;表达式2){ //相关语句 }
3.1.1流程控制语句和顺序结构
01
程序设计的结构
程序设计的三种结构
✓ 顺序结构、选择(分值)结构、循环结构 ✓ 每一种结构都有唯一的入口点和出口点 ✓ 优点:任何简单或者复杂的算法,都可以由这三种结构组合而成
02
程序的顺序结构
程序的顺序结构
程序中的各操作按照它们在源代码中语句的排列顺序依次执行 ✓ 语句的最后加 ”; ”
英文半 角的 ;
程序的顺序结构
复合语句:也称语句块,程序块(block) 用{ }括起来 语句块能嵌套,注意变量的作用域(scope)
03
程序的注释
程序的注释
注释(commet) ✓ 系统不会对注释的内容进行编译
三种注释 ✓ 单行注释 • 以 "//" 开头,至该行末尾 ✓ 单行注释 • 以 “/* ”开头, “ */” 结束 ✓ 单行注释 • Java语言所特有的,以 “/* *”开头,““ */”结尾,后续会用到
• 使用JDK的javadoc命令产生.html格式的文档说明
总结
程序设计的三种 结构
程序的顺序结构
程序的注释
感谢聆听
THANK S 石家庄科技工程职业学院软件技术专业群教学资源库
VB程序语句与控制结构
VB程序语句与控制结构1.顺序结构:程序按照从上到下的顺序依次执行。
2.条件结构:- If-Then语句:根据条件执行相应的语句块。
```vbIf 条件 Then'执行语句块End If```- If-Then-Else语句:根据条件执行不同的语句块。
```vbIf 条件 Then'执行语句块1Else'执行语句块2End If```- Select Case语句:根据表达式的值执行相应的语句块。
```vbSelect Case 表达式Case 值1'执行语句块1Case 值2'执行语句块2Case Else'执行语句块3End Select```3.循环结构:- For循环:循环执行指定次数的代码块。
```vbFor 变量 = 初始值 To 终值 Step 步长'执行语句块Next```- For Each循环:循环遍历集合中的每个元素执行代码块。
```vbFor Each 变量 In 集合'执行语句块Next```- Do While循环:在条件满足的情况下循环执行代码块。
```vbDo While 条件'执行语句块Loop```- Do Until循环:在条件不满足的情况下循环执行代码块。
```vbDo Until 条件'执行语句块Loop```- While循环:在条件满足的情况下循环执行代码块。
```vbWhile 条件'执行语句块```- Until循环:在条件不满足的情况下循环执行代码块。
```vbUntil 条件'执行语句块Loop```4.跳转结构:```vbGoTo行号'或```- Exit语句:提前退出循环或过程。
```vbExit Do'或Exit For'或'或Exit Sub '等等。
基本语句和程序结构
/* 表达式,不是语句 */
C语言程序设计 - 第3章 C语言的基本语句和程序结构设计 3
函数调用语句
形式
函数名(参数表列);
函数调用后加一个分号 函数调用语句可以看作一种表达式语句
举例
printf("%d", i); getchar(); myfun(a, b);
C语言程序设计 - 第3章 C语言的基本语句和程序结构设计 4
复合语句举例
int x, y, t;
if (x > y)
{t = x;
/* 复合语句开始 */
x = y;
y = t;} /* 复合语句结束 */
printf("%d, %d", x, y);
C语言程序设计 - 第3章 C语言的基本语句和程序结构设计 7
C语言语句使用说明
除复合语句外,语句都以分号;作为结束 语句书写格式比较自由,确定语句结束的唯
基本输入输出
头文件
#include <stdio.h>
输入输出函数
字符输出函数 字符输入函数 格式输出函数 格式输入函数 字符串输出函数 字符串输入函数
putchar getchar printf(可以不包含头文件) scanf(可以不包含头文件) puts gets
C语言程序设计 - 第3章 C语言的基本语句和程序结构设计 9
c = getchar(); /* 是否需要输入? 否,直接使用‘\n’*/
printf("c=%d\n", c);/* 输出c=? 10 */
c = getchar();
/* 输入'abcd'后回车 */
putchar(c);
第5讲结构化程序设计之流程控制语句.
第5讲结构化程序设计之流程控制语句教学过程设计一新课引入默认情况下程序是顺序执行的。
当程序员在编写程序时并不知道在一次具体执行中执行者会做些什么时,他可以建立一个执行者用以作出判定的标准。
例如:“朋友来了,端出好酒;豺狼来了,拿出猎枪。
”。
有时程序的某部分可能需要执行多次。
例如:在中草药炮制过程中,对某种药材要经过“九蒸九晒”才符合要求,这种重复必须指明重复的次数。
有时重复执行程序的某部分不一定有明确的次数,但可以以是否达到某个目标作为重复终止的判断依据。
例如:在把假分数化成真分数时,可以从分子中不断地减去分母,直到分子小于分母为止。
操作之间的关系——操作流程包括:顺序、选择、循环、转向(语言表达所需要的)。
其中顺序、选择、循环是三种基本结构,已经证明,由这三种基本结构组成的程序结构,可以解决任何复杂的问题。
由基本结构所构成的程序是结构化的程序,它不存在无规律的转向,只在本基本结构内才允许存在分支和向前或向后的跳转。
软件工程提倡程序员书写结构化的程序。
C语言提供的流程控制语句有——描述“选择”的语句有:if语句、switch语句;描述“循环”的语句有:while语句、do-while语句、for语句;描述“转向”的语句有:goto语句、break语句、continue语句、return语句。
为了达到直观形象、易于理解的效果,我们在进行结构化编程的同时可以辅助以一种图形工具——结构化的流程图。
本讲将主要介绍关于四种操作流程:顺序、选择、循环、转向的C语言描述、图形描述方法,以及由三种基本结构所构成的结构化的程序。
二讲授新课1顺序默认情况下程序是顺序执行的,所以C语言没有必要提供相关的描述语句来表示。
2选择当程序员在编写程序时并不知道在一次具体执行中执行者会做些什么时,他可以建立一个执行者用以作出判定的标准。
例如:“朋友来了,端出好酒;豺狼来了,拿出猎枪。
”。
C语言提供的描述“选择”的语句有:if语句、switch语句。
C语言程序设计基本语句和程序结构流程控制、执行
for(i=1; i<=100; i++) sum+=i; for(i=1; i<=100; sum+=i++);
复合语句 (块语句,Block)
形式
{statements} 用{}把若干条语句组合成为一个复合语句 {}内可以没有任何语句,可以只有一条语句,
也可以有多条语句 可以包括复合语句、空语句、控制语句等
(赋值运算符)
逻辑运算规则
!a
若a为“真”,!a为“假” 若a为“假”,!a为“真”
a&&b
若a、b都为“真”,则a&&b为“真” 若a、b不全为“真”,则a&&b为“假”
a||b
若a、b都为“假”,则a||b为“假” 若a、b不全为“假”,则a||b为“真”
逻辑表达式
逻辑运算符把逻辑量或表达式连接起来
循环程序设计
while语句 do-while语句 for语句 break和continue语句 循环程序设计举例
while语句
while (expression)
statement
while型循环 先判断表达式,后
执行语句 一般情况下,循环
中应含有能使循环 语句结束的操作
a
statement
break;
说明
跳出switch语句 跳出本层循环语句 如果有多层循环存在,break只跳出它所在的
那一层循环语句,不影响外层循环的执行 不能用于循环语句和switch语句之外的任何
其他场合
continue语句
expr. 真 假
b
while语句举例
第3章程序控制结构结构化程序的三种基本结构1、顺序结
Bohm和Jacopini的研究证实,所有的程序都能够只用以上 三种控制结构编写。
3.1 C语言的语句
3.3 分支结构 3.3.1 if 语句 一、if语句的三种形式 1、if(表达式) 语句
假 表达式
真 语句
当表达式值为真(非0)时,执 行if中的语句,否则执行if后的 语句。
可以是复 合语句
例: include <stdio.h> main( ) {int x=10,y=20,z;
z=x; if (z>y)
N
a=b=0,c不为0 Y 无解
N
a=0,b不为0 Y x= -c/b
N
d=b*b-4*a*c
d>0
N
d=0
N
1
Y X1= (-b+sqrt(d))/(2*a) X2= (-b-sqrt(d))/(2*a)
Y X1=X2= -b/(2*a)
1 该方程无实根
END
scanf(“%d”,&x); if (x<0) y=-1;
错误!
ssccaannff((““%%dd””,,&&xx));; iiff((xx>>==00))
else if(x==0);
if(x>i0f)(xy>=01); y=1;
y=0;
else ye=ls0e; y=0;
else y=1;
eellsseeyy==--11;;
计算机程序设计基础_精讲多练CC++_第3章
// 累加求和
22
例 3-7:制作乘法表---多重循环结构(循环的嵌套)
#include <iostream> using namespace std; int main() { int i, j; for(i=1; i<10; i++) { for(j=1; j<=i; j++) cout << j <<"*"<< i <<"="<<i*j <<"\t"; cout << endl; } return 0; }
算法分析:
取一个百分成绩经过运算得到5级制成绩。构造什么 样的表达式呢?
“百分成绩/10 =” ?
共有5个分数档,选择分支大于2,因此用多路开关语 句switch。 计算结果应该是唯一的。转换后应从switch中break 出来。
15
#include <iostream> using namespace std; int main() { int grade; cout<<"请输入(百分制)分数:"; cin >>grade; switch (grade/10) // 根据转换值进行分支选择 { case 10: case 9: cout<<"优秀"<<endl; break; case 8: cout<<"良好"<<endl; break; case 7: cout<<"中等"<<endl; break; case 6: cout<<"及格"<<endl; break; default: cout<<"不及格"<<endl; } return 0; }
三种控制结构以及流程控制语句
三种控制结构以及流程控制语句
在编程中,控制结构是用来对程序执行流程进行控制的语句。
控制结构分为以下三种:
顺序结构:按照代码的先后顺序依次执行。
这是默认的执行方式,不需要使用任何关键字或语句进行控制。
分支结构:根据判断条件选择执行不同的代码块。
常见的分支结构有:
if语句:用于判断条件是否成立,如果成立就执行某个代码块;如果不成立,就执行另外一个代码块。
switch语句:相当于多个if-else语句的简化形式,在不同的情况下执行不同的代码块。
循环结构:在一定条件下,重复执行某个代码块。
常见的循环结构有:
for语句:在已知循环次数的情况下执行某个代码块。
while语句:在未知循环次数的情况下执行某个代码块,只要判断条件成立就一直执行,直到判断条件不成立。
do-while语句:与while语句类似,不同之处在于它至少会执行一次代码块,然后再检查循环条件是否成立。
除了上述基本的控制结构,编程语言还提供了一些流程控制语句,用于在程序执行过程中控制流程的跳转或中断。
流程控制语句包括:
break语句:在循环结构中使用,用于提前结束循环,跳出当前循环体。
continue语句:在循环结构中使用,用于跳过当前循环,并开始下一次循环。
return语句:用于结束函数的执行并返回结果,一旦执行了return语句,函数将立即终止执行,不再执行之后的代码。
goto语句:可以直接跳转到程序的某个标签处继续执行,但过度使用goto语句会使程序难以维护和理解,因此应该谨慎使用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例5.4
判断键盘上输入字符的类别,统计其中字母、数字、 判断键盘上输入字符的类别,统计其中字母、数字、 其它字符的个数并输出。 其它字符的个数并输出。
输入InStr for (i=0;i<strlen(InStr);i++) InStr[i]是数字 InStr[i] Y Y N InStr[i]是字母 NumOfData++ N NumOfChar++ NumOfOther++ 输出结果 图 5.6 例5.4的N-S图
函数调用语句:由函数调用加上分号构成。 函数调用语句:由函数调用加上分号构成。 格式:函数名( [实参列表 实参列表] 格式:函数名( [实参列表] ); 功能:调用函数,以完成函数所规定的功能。 功能:调用函数,以完成函数所规定的功能。 例如: 例如:printf(“C Program”);
本质上,函数调用语句也属于表达式语句。 本质上,函数调用语句也属于表达式语句。
输入大写字母c1 输出c1 c2=c1+32 输出c2 图5.2 例5.2的N-S图
例5.3
交换数据。对输入的两个变量a、b,交换它们的值并输出。
#include <stdio.h> void main() { int a,b,c; printf(“Please input two integers:”); scanf(“%d%d”,&a,&b); printf(“Before swap a=%d b=%d\n”,a,b); c=a; a=b; b=c; printf(“After swap a=%d b=%d\n”,a,b); }
空语句:仅由一个分号组成。 空语句:仅由一个分号组成。 格式: 格式:; 功能:不执行任何操作。 功能:不执行任何操作。
复合语句: 复合语句:由两个或者两个以上的语句构成的 语句。 语句。
格式: 格式:{ 语句1; 语句 语句2; 语句 … 语句n; 语句 } 功能:顺次执行语句1~n。 功能:顺次执行语句1~n。 例如: 例如:{ x=y+1; a=b+c; printf(“%d,%d”,x,a); } 注意: 复合语句必须用一对“ 括起来。 注意:(1)复合语句必须用一对“{}”括起来。 复合语句必须用一对 括起来 (2)复合语句中的最后一条语句不可省略“;”。 复合语句中的最后一条语句不可省略“ 。 复合语句中的最后一条语句不可省略
输入a、b 交换a、b 输出a、b
5.3 选择结构
C语言提供了两种分支结构控制语句: 语言提供了两种分支结构控制语句: if 语句 switch语句 switch语句
if语句格式一
格式1:if (表达式) 格式1 (表达式) 表达式 语句 功能:如果表达式为真, 功能:如果表达式为真,则执 行其后的语句, 行其后的语句,否则不执行语 句。 例如:if (a>b) 例如: max=a;
//根据用户购物的总价,选择不同的折扣率。 //根据用户购物的总价,选择不同的折扣率。 根据用户购物的总价 if (Cost>1000) Rate=0.7; else if (Cost>800) Rate=0.8; else if (Cost>500) Rate=0.9; else Rate=1.0;
for (i=0;i<strlen(InStr);i++) { if (InStr[i]>='0' && InStr[i]<='9') NumOfData++; else if ((InStr[i]>='a' && InStr[i]<='z') ||(InStr[i]>='A' && InStr[i]<='Z')) NumOfChar++; else NumOfOther++; } %d.\ printf(“%d, %d, %d.\n", NumOfData, NumOfChar, NumOfOther); }
else printf(“b>=a,a<0\n”);
二、C程序编程风格
一般而言,一个优秀的程序代码应该满足: 一般而言,一个优秀的程序代码应该满足:
正确性:指程序代码要实现软件设计所要求的功能。 正确性:指程序代码要实现软件设计所要求的功能。 可靠性:指程序代码最后编译的程序要能够稳定、可靠、 可靠性:指程序代码最后编译的程序要能够稳定、可靠、 安全的运行。 安全的运行。 规范化:指程序代码书写的风格、命名规则等符合规范。 规范化:指程序代码书写的风格、命名规则等符合规范。 可读性:指程序代码要便于查看和理解。 可读性:指程序代码要便于查看和理解。 灵活性:指程序代码的设计和编写应该易于维护和改动。 灵活性:指程序代码的设计和编写应该易于维护和改动。 1、代码行 、 2、注释 、 3、对齐 、 4、命名系统 、
表达式
Y 语句 图 5.3 if语句的N-S图 N
if语句格式二
格式2 (表达式 表达式) 格式2:if (表达式) 语句1 语句1 else 语句2 语句2 功能:如果表达式为真, 功能:如果表达式为真,则 执行语句1 否则执行语句2 执行语句1;否则执行语句2。 例如: 例如: if (a>b) max=a; else max=b;
#include <stdio.h> #include <string.h> void main(){ char InStr[80]; unsigned int i; int NumOfData=0; int NumOfChar=0; int NumOfOther=0; printf("input a string:"); gets(InStr);
表达式
Y 语句1 N 语句2
图 5.4 if-else语句的N-S图
if语句格式三
格式3: 表达式 表达式1) 格式 :if (表达式 语句1 语句 else if (表达式 表达式2) 表达式 语句2 语句 else if (表达式3) (表达式 表达式3) 语句3 语句 …… else if (表达式 表达式n) 表达式 语句n 语句 else 语句n 语句 +1 功能:依次判断表达 式的值, 式的值 , 当出现某个 值为真时, 值为真时 , 则执行对 应语句, 然后跳到整 应语句 , if语句之外继续执 个 if 语句之外继续执 行程序。 行程序。 如果所有的表达 式均为假, 式均为假 , 则执行语 n+1 句 n+1 。 然 后 继 续 执字之后均为表达式。该表达式可以是逻辑表达式、 1.if关键字之后均为表达式。该表达式可以是逻辑表达式、关系表达 if关键字之后均为表达式 式以及其它表达式。只要表达式运算的结果为非0 就按“ 处理, 式以及其它表达式。只要表达式运算的结果为非0,就按“真”处理, 执行相应的语句;否则按“ 处理,执行相应的语句。 执行相应的语句;否则按“假”处理,执行相应的语句。 2.在if语句中的条件判断表达式必须用圆括号括起来 语句中的条件判断表达式必须用圆括号括起来, 2.在if语句中的条件判断表达式必须用圆括号括起来,执行语句之后 必须加分号。 必须加分号。 3.在if语句的第二 三种形式中,else子句不能作为语句单独使用 语句的第二、 子句不能作为语句单独使用, 3.在if语句的第二、三种形式中,else子句不能作为语句单独使用, 必须是if语句的一部分,应与if配对使用。 if语句的一部分 if配对使用 必须是if语句的一部分,应与if配对使用。 4.在if语句的三种形式中 所有的语句应为单个语句, 语句的三种形式中, 4.在if语句的三种形式中,所有的语句应为单个语句,如果想在满足 条件时执行一组(多个)语句,则必须把这一组语句用“{}”组成 条件时执行一组(多个)语句,则必须把这一组语句用“{}”组成 一个复合语句。但是在“}”之后不能加分号 之后不能加分号。 一个复合语句。但是在“}”之后不能加分号。 5.在if语句的表达式中 一定要避免判断实数与零值的等值比较。 语句的表达式中, 5.在if语句的表达式中,一定要避免判断实数与零值的等值比较。 6.虽然在 里面,常量NULL 零值都是false 非零值都是true 虽然在C NULL、 false, true, 6.虽然在C里面,常量NULL、零值都是false,非零值都是true,但是 为了使得程序清晰易读,建议在表达式中不要使用“ (a)”这样 为了使得程序清晰易读,建议在表达式中不要使用“if (a)”这样 的语句。 的语句。
表达式语句:由表达式加上分号组成。 表达式语句:由表达式加上分号组成。 格式:表达式; 格式:表达式; 功能:计算表达式的值。 功能:计算表达式的值。 例如: 例如:x=y+z; x+y; i++; 说明: 语言中的任何一个表达式都可以构成语句。 说明:C语言中的任何一个表达式都可以构成语句。
注意表达式与表达式语句的区别
if语句的嵌套
如果if语句中的执行语句又是一个if语句, 如果if语句中的执行语句又是一个if语句,就 if语句中的执行语句又是一个if语句 构成了if语句嵌套的情形。 if语句嵌套的情形 if 构成了if语句嵌套的情形。 (a>b) if (b>0) 表达式) 格式:if (表达式 表达式 printf(“a>b>0\n”); else if语句 语句 printf(“a>b,b<=0\n”); 表达式) 或者:if (表达式 表达式 else if (a>0) if语句 语句 printf(“b>=a>0\n”); else else if (a==0) printf(“b>=a=0\n”); if语句 语句