c语言算法与三种基本结构,C语言N03 算法与程序基本结构 4学时+2学时精选.ppt

本课程介绍C语言的基础知识,包括算法与程序的基本结构、三种基本控制结构等内容,并通过实例讲解如何实现分支和循环结构。此外,还介绍了C语言中的各种语句及运算符。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C语言N03算法与程序基本结构4学时2学时精选

第三章 算法与程序基本结构 本章课程共6学时 其中:授课4学时,上机2学时 3.1 算法和算法的表示 程序的两个主要构件 算法的概念 算法的表示 3.2 三种基本结构 3.3 结构化程序设计 3.4 分支和循环结构的C语言程序实现 C语句:以“;”作分隔符, 编译后产生机器指令 表达式语句:"表达式+分号"构成 空语句: ; 程序控制语句(9种): 复合语句:用 {…}括起来的一组语句 关系运算符与关系表达式 包括符号:< <= == >= > != 逻辑运算符与逻辑表达式 包括符号: ! && || 分支语句(1):if语句 分支语句(2):switch语句 循环语句(1):if和goto语句构成循环 循环语句(2):while语句构成循环 循环语句(3):do … while语句构成循环 循环语句(4):for语句构成循环 两种辅助控制语句:break continue 3.5 综合例题 * * (1) 对数据的描述:数据结构(data structure)。数据的类型和组织形式。 (2) 对操作的描述:算法(algorithm)。操作步骤。 程序 = 数据结构 + 算法 程序 = 算法 + 数据结构 + 程序设计方法 + 语言工具和环境 算法是为解决一个问题而采取的方法和步骤 (1) 自然语言描述 (2) 流程图描述 P16 例3.1(教材P19) 判定2000~2500年中的每一年是否闰年,将结果输出。已知闰年的条件是: (1)能被4整除,但不能被100整除的年份都是闰年; (2)能被100整除,又能被400整除的年份是闰年。 (3)不符合这两个条件的年份不是闰年。 自然语言描述 设y为被检测的年份,可采取以下步骤: S1:2000=>y S2:若y不能被4整除,输出“y不是闰年”,转到S6 S3:若y能被4整除,不能被100整除,输出“y是闰年”,转到S6 S4:若y能被100整除,同时又能被400整除,输出y“是闰年”,转到S6 S5:输出“y不是闰年” S6:y+1=>y S7:当y≤2500时,转S2继续执行,如y>2500,算法停止。 ANSI流程图描述 例3.1(教材P19) 判定2000~2500年中的每一年是否闰年,将结果输出。已知闰年的条件是: (1)能被4整除,但不能被100整除的年份都是闰年; (2)能被100整除,又能被400整除的年份是闰年。 (3)不符合这两个条件的年份不是闰年。 程序开始 程序结束 条件判断 输入输出 执行操作 流程线 N-S流程图描述 例3.1(教材P19) 判定2000~2500年中的每一年是否闰年,将结果输出。已知闰年的条件是: (1)能被4整除,但不能被100整除的年份都是闰年; (2)能被100整除,又能被400整除的年份是闰年。 (3)不符合这两个条件的年份不是闰年。 顺序结构 选择结构 循环结构 (1) 顺序型结构 (2) 选择型结构 P26 (3) 循环结构,它又称重复结构。 (a)当型(While型)循环结构 (b)直到型(Until型)循环结构 当型 直到型 任何算法都可以划分成上述三种基本结构 练习: 判断一个大于或等于3的正整数是否为素数。 素数:除了1和该数本身之外,不能被其他任何整数整除的数。 判断素数的方法:将n作为被除数,将2到(n-1)各个整数轮流作为除数,如果都不能被整除,则n为素数。 (1)自然语言描述 S1:输入n的值 S2:2=>i (i作为除数) S3:n被i除,得余数r S4:如果r=0,表示n能被i整除,则打印n“不是素数”,算法结束;否则执行S5 S5:i+1=>i S6:如果i≤n-1,返回S3;否则打印n“是素数”,然后结束。 (2)ANSI流程图 (3) N-S流程图 (1) 自顶向下, 逐步细化 (2) 模块化设计 (3) 结构化编码 P34 例 表达式语句 total=total+limit; a=3; func( ); printf(“Hello,world!\n”); 复合语句的说明: “}”后不加分号 语法上和单一语句相同 复合语句可嵌套 例 复合语句 {total=total+limit; a=3; func( ); } P57 例 c>a+b //c>(a+b) a>b!=c //(a>b)!=c a==bc //a=(b>c) 例:若a=0; b=0.5; x=0.3; 则 a<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值