第03-05章 C语言的流程控制
- 格式:ppt
- 大小:551.50 KB
- 文档页数:79
C语言是一种广泛应用的编程语言,其流程控制语句是编写程序中的重要部分。
流程控制语句用于控制程序的执行流程,包括顺序执行、条件执行和循环执行。
C语言中常用的流程控制语句主要包括顺序结构、选择结构和循环结构,下面将分别介绍它们的语法格式及使用方法。
1. 顺序结构顺序结构是程序中最简单的流程控制结构,也是最基本的结构。
顺序结构指的是按照代码的编写顺序依次执行,没有跳跃或分支。
在C语言中,顺序结构是程序的默认执行方式,没有特定的关键字或语法格式。
程序中的语句按照编写的顺序依次执行,直到程序结束。
例如:```cint m本人n() {int a = 1;int b = 2;int c = a + b;printf("The result is d\n", c);return 0;}```以上代码中的语句就是按照顺序依次执行的,没有条件判断或循环。
2. 选择结构选择结构是根据条件判断的结果决定程序执行的流程控制结构。
在C 语言中,选择结构有两种形式,分别是if语句和switch语句。
(1)if语句if语句用于根据条件判断的结果决定程序的执行流程。
其基本语法格式如下:```cif (condition) {// 当条件为真(非0)时执行此处的语句块} else {// 当条件为假(0)时执行此处的语句块}```在if语句中,condition代表一个表达式或逻辑判断,如果condition 的值为真(非0),则执行if后面的语句块;否则执行else后面的语句块。
例如:```cint score = 80;if (score >= 60) {printf("Pass\n");} else {printf("F本人l\n");}```以上代码中,根据score的值来判断是否及格,如果score大于等于60,则输出Pass,否则输出F本人l。
除了if和else关键字,还可以使用else if语句来实现多重条件判断:```cint score = 75;if (score >= 90) {printf("Excellent\n");} else if (score >= 80) {printf("Good\n");} else if (score >= 70) {printf("Average\n");} else {printf("F本人l\n");}```(2)switch语句switch语句也是一种选择结构,适用于有多个条件判断的情况。
第3章C语言程序的流程控制利用计算机进行程序设计时,不仅仅只处理一些简单的数据,在大部分的程序设计里处理的问题还是相当复杂的。
对于那些复杂的程序设计,读者不可能直接就能写出程序的源代码,而是要通过一些具体的设计方法(如用程序流程图)把程序设计思想先写出来,然后根据程序流程图编写代码。
本章将具体介绍进行程序设计时使用的基本方法和C程序的流程控制。
3.1程序设计的基本知识3.1.1程序流程图在描述一个程序的基本结构思想时有很多种方法,其中程序流程图是最常用也是最基本的方法。
1.传统程序流程图传统流程图表示法的特点是用一些图框表示各种类型的操作,用线表示这些操作的执行顺序。
美国国家标准化协会ANSI规定了一些常用的流程图符号,现已为世界各国普遍采用。
我国也有自己的国家标准GB 1526-89与该标准基本相同,本书就参照ANSI标准做具体介绍。
标准中各种图示如图3.1所示。
起止框输入输出框判断框处理框或流程线连接点注释框图3.1 传统流程图表示法下面对其中一些主要符号作简要说明:(1)起止框是用来标识程序的开始和结束位置的。
规定流程图以起止框开始,以起止框结束。
(2)输入输出框也叫数据框,其中可以注明数据名称、来源、用途或其它的文字说明。
(3)菱形框的作用是对一个给定的条件进行判断,根据给定的条件是否成立来决定如何执行其后的操作。
(4)处理框用矩形表示各种处理功能。
例如,执行一个或一组特定的操作,从而使信息的值、信息的形式或所在位置发生变化。
另外在矩形框内可注明特定处理名称或其简要功能。
(5)流程线用带箭头的直线表示程序的执行顺序。
当流程自左向右或自上向下时流程线可以不带箭头,其它情况应加箭头表示流程。
(6)连接点用小圆圈表示将画在不同地方的流程线连接起来。
下图中有两个以①为标志的连接点,它表示这两个点是互联在一起的,实际它们是同一个点。
这种连接通常用在图形画不下而需要分开画时。
①①(7)注释框不是流程图的必要部分,其不反映流程操作,只是为了流程图中某些操作做解释补充的,以帮助阅读流程图的人更好的理解流程图的作用。
C语言流程控制
C语言是一种面向过程的编程语言,它提供了多种流程控制结构来
控制程序的执行流程。
流程控制可以让程序根据条件进行分支执行,
或者进行循环执行,以实现不同的逻辑功能。
本文将介绍C语言中常
用的流程控制语句以及它们的用法和应用场景。
条件语句
条件语句用于根据条件判断是否执行某个代码块。
C语言中的条件
语句有两种形式:if语句和switch语句。
if语句
if语句用于在满足某个条件时执行某段代码。
其根本语法如下所示:if (condition) {
// code to be executed if condition is true
}
如果条件为真,那么执行花括号中的代码块;如果条件为假,那么跳过代码块,继续执行后续语句。
可以通过多个if语句的嵌套来实现多个条件判断。
下面是一个简单的例如:
```c #include <stdio.h>
int main() { int num = 10;
if (num > 0) {
printf(\。
C語言(5)流程控制前言在C語言中,非0表示真,0表示假,如”a > 0;”這個敘述,若a真的大於0,則會輸出真(非0)一、流程控制(flow control)(1) if-else用法:if ( 條件敘述 ){ 若符合條件就執行這裡 }else if ( 條件敘述 ) /* 若不符合上述條件就看這裡的條件 */{ 若符合條件就執行這裡 }else /* 若不符合上述所有條件就執行這裡 */{ 敘述… }其中if可以單獨用,else和else if都要和if搭配用(2) switch-case用法: switch ( 條件式 ){case 條件值1: { 動作1 } break;case 條件值2: { 動作2 } break;case 條件值3: { 動作3 } break;..default: { 動作n } break; /* 以上條件皆不成立時執行這裡 */ }case的數目可自由決定,default可不加,但break一定要加,否則那項以下的敘述都會執行,這是一個中斷敘述,且條件值必須是整數、字元,不可是變數(3) while用法: while ( 條件式 ) { 若符合條件就執行這裡 }基本上和if是完全一樣的,只是若符合條件式會一直執行(小心無限迴圈!!)(4) do-while用法: do{ 敘述 }while ( 條件式 )先執行「敘述」後再比對「條件式」,這種迴圈至少會執行一次(小心無限迴圈!!)(5) for用法: for ( 算式1 ; 算式2 ; 算式3 ){ 敘述 }執行流程如下:進入迴圈->算式1->算式2(若符合)->敘述->算式3->算式2(若符合)->敘述->算式3->算式2(若符合) … ->敘述->算式3->算式2(若不符合)->跳離這就是for迴圈,同樣要小心無限迴圈(6) goto用法: goto 標籤名稱; /* 標籤名稱是自己定義的名稱 */...標籤名稱: 敘述式;除非必要(如跳離多層迴圈),不然少用這個二、迴圈的特殊指令(1) continue : 利用這個可以跳過迴圈內接下來的敘述直接到下個迴圈(2) break : 利用這個可以跳過迴圈內接下來的敘述直接離開迴圈如: for( … ){…if( … )continue; /* 若條件式成立就到下個迴圈 */…if( … )break; /* 若條件式成立就跳離迴圈 */…}三、範例/* Main.cpp --- Flow Control */#include <stdio.h>#include <string.h>int main (void){int choose,i;char s tring[30];printf(“請輸入(1.繼續 2.離開): “);scanf(“%d”,&choose);switch(choose){case 1:break;case 2:printf(“Bye!!\n”);return 0;default:printf(“不要亂輸入!!\n”);return 0;}for(i=0;i<10;i++){scanf(“%s”,string);if(strcmp(“exit”,string) == 0 ){printf(“Bye!\n”);return 0;}}return 0;}。
图描述
灵活的流线是程序中隐藏错误的祸根。
针对这一弊病,1973年美国学者
B. Shneiderman提出了一种无流线的流程图,称为N-S图。
它的三种
3.6所示。
图的每一种基本结构都是一个矩形框,整个算法可以像堆积木一样堆图中没有了流线,所以绝对不会出现由于乱用流线造成的
(a)顺序结构(b)选择结构(c)当型重复结构
图3.6 用N-S图描述三种基本流程结构
(pseudo code)是用介于自然语言与计算机语言之间的文字符号算法
操作数a和b可以是常量、变量或表达式。
可以使字符型、整型或浮点型,但是:运算结果只能是0或1.
优先级:
由高到低:逻辑非!、算术运算符、关系运算符、逻辑与
算符。
第3章流程控制学习目标◆掌握选择结构语句◆掌握循环结构语句前面的章节一直在介绍C语言的基本语法知识,然而仅仅依靠这些语法知识还不能编写出完整的程序。
在程序中,通常需要加入业务逻辑,并对程序的流程进行控制。
本章将重点讲解C语言中最基本的三种流程控制语句。
3.1 程序的运行流程图流程图是描述问题处理步骤的一种常用图形工具,它是由一些图框和流程线组成的。
流程图描述问题的处理步骤,形象直观,便于阅读。
画流程图时必须按照功能选用相应的流程图符号,常用的流程图符号如图3-1所示。
起止框输入/输出框判断框处理框流程线连接点图3-1流程图符号图3-1所示的流程图符号中,列举了四种图框和两种流程线,具体说明如下:●起止框用于表示流程的开始或结束;●输入/输出框用平行四边形表示,在平行四边形内可以写明输入或输出的内容;●判断框用菱形表示,它的作用是对条件进行判断,根据条件是否成立来决定如何执行后续的操作;●处理框用矩形表示,它代表程序中的处理功能,如算术运算和赋值等;●流程线用实心单向箭头或直线表示,可以连接不同位置的图框,流程线的标准流向是从左到右和从上到下,可用直线表示,非标准流向的流程线应使用箭头指示方向;●连接点用圆形表示,用于流程图的延续。
通过上面的讲解,初学者对流程图符号有了简单的认识,接下来先来看一个简单的流程图,如图3-2所示。
第3章流程控制图3-2判断奇偶数图3-2表示的是一个判断奇偶数的流程图,下面针对该流程图中的执行顺序进行说明,具体如下:第1步:程序开始;第2步:进入处理框,将变量number赋值为1;第3步:进入判断框,判断number是否为偶数,如果是偶数,则进入下面的输出框,输出number是偶数;否则进入左面的输出框,输出number是奇数;第4步:输出完成后,进入结束状态,程序终止。
3.2 顺序结构语句前面章节讲解的程序都有一个共同的特点,即程序中的所有语句都是从上到下逐条执行,这样的程序结构叫做顺序结构。
967c语言程序设计参考书介绍本文档是一本C语言程序设计参考书,旨在帮助读者系统学习和掌握C语言编程。
通过详细的示例和解释,逐步引导读者理解C语言的基本概念和编程技巧,并提供在实际项目中应用这些知识的实例。
本书适合初学者和有一定编程基础的读者使用。
目录1.[第一章:C语言入门](#第一章:C语言入门)2.[第二章:数据类型和运算符](#第二章:数据类型和运算符)3.[第三章:流程控制](#第三章:流程控制)4.[第四章:函数与模块化编程](#第四章:函数与模块化编程)5.[第五章:数组与指针](#第五章:数组与指针)6.[第六章:结构体和联合体](#第六章:结构体和联合体)7.[第七章:文件操作](#第七章:文件操作)8.[第八章:动态内存分配](#第八章:动态内存分配)9.[第九章:高级C语言特性](#第九章:高级C语言特性)第一章:C语言入门1.1C语言简介C语言是一种通用的高级编程语言,具有简洁、高效的特点,被广泛应用于系统软件开发、嵌入式系统、游戏开发等领域。
本节将介绍C语言的起源和特点。
1.2开发环境搭建在学习C语言编程之前,我们需要正确配置开发环境。
本节将介绍如何搭建C语言开发环境,包括安装编译器、编辑器等。
1.3第一个C程序让我们从一个简单的"He ll oW or ld!"程序开始。
本节将教你如何编写、编译和运行你的第一个C程序。
第二章:数据类型和运算符2.1基本数据类型C语言提供了多种基本的数据类型,包括整型、浮点型、字符型等。
本节将介绍各种数据类型的定义和使用方法。
2.2运算符C语言支持各种算术、逻辑和关系运算符,用于完成不同类型的运算。
本节将详细介绍这些运算符的使用方法和优先级。
2.3类型转换在C语言中,不同类型的数据可以相互转换。
本节将介绍隐式和显式类型转换的规则,以及类型转换可能导致的一些问题。
第三章:流程控制3.1条件语句条件语句用于基于给定条件选择性地执行代码块。