C语言算法和简单程序设计课件

更新时间:2023-08-06 16:35:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C语 言 程 序 设 计 本章要点:

http://www.77cn.com.cn

第三章 算法和最简单的 C 程序设计

掌握了解算法的基本概念与特征 掌握熟悉结构化程序设计的基本概念

第 三 章

掌握算法的表示方法

四川理工学院

C

http://www.77cn.com.cn

第 三 章

3.1 算法 语 言 一、算法的概念 程 Nikiklaus Wirth 公式 序 设 程序 = 数据结构 + 算法 计 数据结构:对数据的描述,在程序中指定数据的 类型和数据的组成形式。算法:对操作的描述,即解决问题的方法和步骤。

程序 = 数据结构 + 算法 + 程序设计方法 + 语言工具 + 环境四川理工学院

C

3.1 算法

http://www.77cn.com.cn

语 二、算法的特性 言 1. 有穷性 程 一个算法包含的操作步骤应当是有限的。 序 设 2. 确定性 一个算法的含义应当是唯一的,算法中的每一个 计 步骤应当是确定的,不应产生 “ 歧义性 ”。 第 3. 有零个或多个输入 4. 有一个或多个输出 三 5. 有效性 算法中的每一步都应当能有效地执行, 章 并得到正确的结果。 四川理工学院

C语 言 程 序 设 计

http://www.77cn.com.cn

3.1 算法( 即 5! )2 ; 6; 24 ; 120 ;

三、简单算法举例 1. 求 1×2 ×3 ×4 ×5 算法一: 步骤1: 1×2 得 步骤2: 2×3 得 步骤3: 6×4 得 第 步骤4: 24×5 得

三 章

四川理工学院

C

http://www.77cn.com.cn

3.1 算法 语 言 三、简单算法举例 程 1. 求 1×2 ×3 ×4 ×5 ( 即 5! ) 序 设 算法二: 计 设 p 为被乘数, i 为乘数,采用循环算法。 S1 : 使 p = 1 ; S2 : 使 i = 2 ; 第 S3 : 使 p ×i p 三 S4 : 使 i + 1 i S5: 如果 i 不大于5 则返回重新 章 执行 S3 , S4 ,S5 ; 否则, 算法结束。四川理工学院

C

语 三、简单算法举例 言 程 2. 对一个大于或等于3的正整数,判断它是不是 序 一个素数。 设 算法一: 计 将 n 作为被除数,将 2 到 ( n – 1 )

3.1 算法

http://www.77cn.com.cn

第 三 章

各个整数轮流作为除数,如都不能被整除,则 n 为素数。

四川理工学院

C语 言 程 序 设 计

三、简单算法举例

3.1 算法

http://www.77cn.com.cn

算法二: 将 n 作为被除数,将2到n/2(或者是 2 到 n1/2 ) 各个整数轮流作为除数,如都不能被整除,则n为 素数。 S1: 输入 n 的值 S2: i = 2 ( i 作为除数 ) 第 S3: n 被 i 除,得余数 r S4: 如r= 0,则输出“不是素数”,反之执行 S5 三 S5: i + 1 i 章 S6: 如果 i≤ n – 1 , 返回 S3 ; 否则输出 “是素数 ”结束。四川理工学院

C语 言 程 序 设 计

3.1 算法四、算法的表示方法① 自然语言

http://www.77cn.com.cn

② 传统流程图③ 结构化流程图

第 三 章

④ 伪代码⑤ PDA图。

四川理工学院

C语 言 程 序 设 计 1. 传统流程图

3.1 算法四、算法的表示方法

http://www.77cn.com.cn

特点: 用一些规定的图框表示各种操作。 直 观形象,易于理解。 常用的ANSI

规定图形符号如图: 起始或结束框 输入输出框 判断框 处理框

第 三 章

流程线连接点

注释框四川理工学院

C

http://www.77cn.com.cn

语 用传统流程图来表示求 5!。 言 开始 程 序 1→t 设 2→i 计 t×i→t i + 1→i

第 三 章N

i >5 结束 四川理工学院

C 2. 程序的三种基本结构

http://www.77cn.com.cn

语 一个程序只能由三种基本结构(或由它们派 言 程 生出来的结构)组成,这三种结构为: 序 (1) 顺序结构 (2) 选择结构 (3) 循环结构 设 计A P A B A成立

A不成立

第 三

B

P1

P2成立

章 顺序结构

选择结构

循环结构

四川理工学院

C 3. 用 N S 流程图表示算法语 言 程 序 设 计

http://www.77cn.com.cn

N S 结构化流程图是根据美国学者 I . Nassi和 B.Shneiderman 1973年提出的算法来描述的, 属于无流线的流程图,简称 N S 图。

A

第 三 章

P

当P为真 A

B C 顺序结构

A

B

A直到P为假 循环结构 四川理工学院

选择结构

C语 言 程 序 设 计

http://www.77cn.com.cn

P1 P3

假假

当 P2 为真 真

A

B

C

一般情况 第 N S 图的特点: 比自然语言描述更直观、形象、易于理解。 三 比传统流程图紧奏易画。 章 图中的上下顺序就是执行时的顺序,符合 “自顶向下,逐步细化”的结构化程序设计要求。 四川理工学院

C语 言 程 序 设 计 1→t 2→i t×i → t i + 1→ i 直到 i >5 输出

http://www.77cn.com.cn

第 三 章

求 5!的 N S 流程图

四川理工学院

C语 言 程 序 设 计

http://www.77cn.com.cn

第 三 章

输入 n 0→w 2→i n / i 的余数 → r r=0 是 否 1→ w i + 1→ i 直到 i > n1/2 或 w ≠ 0是 w=0 否

“是素数”

“不是素数” 四川理工学院

判断素数的 N S 流程图

C语 言 程 序 设 计

3.2 C 语句概述C语句包括:1

http://www.77cn.com.cn

第 三 章

控制语句 ( 9 ) 种 if2( ) ~ else ; 控制语句 函数调用 for ( ) ~ ; 语句 复合语句 5 函数调用语句 while ( ) ~; 例如: 格式 = cos(0.5); 表达式语句: 表达式;do ~y while ; { continue ; y = sin(cos(0.5)); 语句1; printf(“Hello”); break ; 空语句: ; switch ; 语句 n ; 复合语句 goto ; } return

四川理工学院

C语 言 程 序 设 计

http://www.77cn.com.cn

3.3 赋值语句赋值语句由赋值表达式加上分号构成。

如: a = b ;C语言中将赋值表达式和赋值语句分开来,

其目的是增加表达式的种类和使用范围。

第 三 章

如:

(1) if ( x > 0 )(2) if ( (a = b ) > 0 ) t=a; 四川理工学院

C

http://www.77cn.com.cn

语 3.4 字符数据的输入输出 言 C 程序的输入和输出完全依靠调用标准输入 程 序 和输出函数来完成。 设 常用的 4个I/O 函数为 : 计 scanf ( ) getchar ( )

第 三 章

printf ( )

putchar ( )

四川理工学院

C

http://www.77cn.com.cn例如

重点 3.4 字符数据的输入输出 输出单个

字符 语 输出单个转义字符 # # include <stdio.h > > include 言 一、putchar 函数 (字符输出函数 ) <stdio.h /* main( ) 包含I/O库有关变量定义和宏定义 */ 程 main ) 作用: (向终端(即系统隐含指定的输出设备, 序 { { char a , b , c ; 设 putchar ( \101 ) ; 如显示器,打印机) 输出一个字符。 a = B ; 计 putchar b = O ; ( \ ) ;) ; 格式: putchar ( ch putchar c = Y ; ( \n ) ; } putchar ( a ) ; 其中: ch 代表一个字符型或整型变量, 第 输出结果: ( b ) ; putchar 也可以是一个字符常量或整型常量。 三 A putchar ( c ) ; } 章 输出单个字符 输出转义字符 输出结果: BOY 四川理工学院

本文来源:https://www.bwwdw.com/article/vbyj.html

Top