第6讲 C程序设计基础(II).ppt

上传人:bao****ty 文档编号:135661273 上传时间:2020-06-17 格式:PPT 页数:53 大小:264KB
返回 下载 相关 举报
第6讲 C程序设计基础(II).ppt_第1页
第1页 / 共53页
第6讲 C程序设计基础(II).ppt_第2页
第2页 / 共53页
第6讲 C程序设计基础(II).ppt_第3页
第3页 / 共53页
第6讲 C程序设计基础(II).ppt_第4页
第4页 / 共53页
第6讲 C程序设计基础(II).ppt_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《第6讲 C程序设计基础(II).ppt》由会员分享,可在线阅读,更多相关《第6讲 C程序设计基础(II).ppt(53页珍藏版)》请在金锄头文库上搜索。

1、第六讲C程序设计基础 II 语句与控制流标准库函数 输入输出控制初等算法 主要内容 语句 C程序中最小的独立单位是语句 statement 分号是语句结束的标志 C语句可以分为以下4种 1 声明语句如inta b 2 执行语句通知计算机完成一定的操作 例 x 1 3 空语句 即只有一个分号的语句 它什么也不做 4 复合语句 语句组 可以用 把一组语句括起来成为复合语句 控制流 控制程序执行顺序的语法结构 程序的三种基本结构 顺序 分支 循环 C语言程序控制语句 分支控制语句 if else switch case default循环控制语句 while do while for此外 还有一些与

2、程序转移控制有关的语句 break continue return goto 分支控制语句包括 条件语句 if else多分支语句 开关语句 switch case default 分支控制语句 if 表达式 语句1 else 语句2 条件分支语句 if 表达式 语句或语句组 表达式 真 假 两种形式 语句2 语句1 if 表达式1 语句1 elseif 表达式2 语句2 elseif 表达式N 语句N else statements N 1 多分支结构 条件语句if else示例1 例9 2判断一个数是否偶数 includeintmain inta 123 if a 2 0 printf d

3、isaneven a return0 例9 3求2个数的最大者inta 123 intb 456 if a b printf Thebiggeroneis d a else printf Thebiggeroneis d b 条件语句if else示例2 条件语句if else示例3 例9 4求3个数的最大者inta 123 b 456 c 237 if a b 通常表达式是关系表达式或逻辑表达式 如 x y 1 x y x z x 10 x 5程序根据表达式的值是 真 或 假 来决定下一步要执行的分支 但表达式也可以是其他任意合法的表达式 这时若表达式的值为0则表示假 非0表示真 为了增强程

4、序的可读性 应将if或else后的语句用 括起来 elseif和else子句是任选的 不能单独作为语句使用 它必须和if语句配对使用 并且总是与离它最近的if配对 关于条件语句if else的几点说明 if i 0 if j i x j elsex i if i 0 if j i x j elsex i switch 表达式 case常量1 statements1 break case常量N statementsN break default defaultStatements 多分支语句switch case default 对于某些实际问题 有多种可能的执行情况 需要根据条件确定下一步的执

5、行部分 这就是多分支语句 switch case语句 也称开关语句 可用于多分支结构 执行switch语句时 首先对表达式求值 然后与每个case子句中的常量值比较 若找到匹配的常量 相等 程序就执行该分支的语句 当没有case子句匹配时 就执行default子句 default子句是任选的 可有可无 若无default子句 此时switch语句就什么动作也没有做 说明 表达式的值类型必须是整型或字符型 char short int long case子句中的值也必须是整型或字符型常量 而且所有case子句中的值应是不同的 可以多个case子句共用一个执行语句 例如 case a case b

6、 case c x 说明 break语句用来在执行完一个case分支后 使程序跳出switch语句 即终止switch语句的执行 如果某个case分支后没有break语句 程序将不再做比较而执行下一个分支 直到break语句或该复合语句结束 switch语句的功能可以用if else语句来实现 但某些情况下 使用switch语句更简炼 includeintmain inta 100 b 20 c charoper scanf c case c a b break default if b 0 c a elsec a b break printf c d n c return0 例9 5计算器程

7、序 根据从键盘输入的运算符 实现两个数的四则运算 很多实际问题中会遇到具有规律性的重复运算 因此 在程序中就需要将某些语句重复执行 比如 求1到N的和 如果没有循环 我们该如何编程 1 2 3 1 intN i S 0 2 i 1 3 if i N 4 S S i 5 i i 1 6 回到3 循环控制语句 c语言提供的循环控制语句包括 forwhiledo while 基本格式 for 表达式1 表达式2 表达式3 body 循环体 for语句执行顺序 1 执行表达式1 初始条件 2 执行表达式2 并以表达式2的值作为循环条件 该值为0则退出循环 非0则执行循环体中的语句 body 3 执行表

8、达式3 完成一次循环后 再次进行第2步 for循环 for语句中的三个表达式都可以省略 但分号不能省 三者均为空的时候 相当于一个无限循环 for includeintmain inti n2 0 n3 0 for i 0 i 100 i 初始条件 循环条件 循环变量改变 if i 2 0 n2 elseif i 3 0 n3 printf n2 d n3 d n n2 n3 return0 例9 6计算从0到100的整数中有多少个数是偶数 有多少个数是3的整数倍 includeintmain intsum 0 注意sum必须赋初值inti for i 1 i 100 i sum sum i

9、printf sum d sum return0 例9 7求1 100的和 基本格式 while 表达式 循环条件 body 循环体 当表达式的值为 真 非0 时 执行 中的语句 否则终止循环 while循环 body 假 真 表达式 includeintmain intsum 0 注意sum要赋初值inti 1 while i 100 sum sum i i printf sum d sum return0 例9 9用while循环求1 100的和 基本格式 do body 循环体 while 表达式 循环条件首先执行一遍 中的语句 再执行表达式 当表达式为 真 非0 时 继续执行 中的语句

10、 否则终止循环 do while循环 includeintmain intsum 0 inti 100 do sum i i while i 0 printf sum d sum return0 例9 11用do while循环求1 100的和 在while do while for这三种循环控制语句中 都包括下面三个要素 initialization 初始化条件termination 循环条件iteration 变更循环条件在使用循环控制语句时 要注意正确处理以上三个要素 以避免死循环 要清楚循环的执行次数 往往容易多一次 少一次 循环控制语句的要素 程序转移相关语句包括 breakcont

11、inuereturn 其它控制语句 在switch语句中 break语句用来终止switch语句的执行 使程序从switch结构中跳出 在循环语句中 while do while for break用于终止并跳出循环 break语句的格式为 break break语句 inti for i 0 i 10 i if i 5 break 到第5次循环时 就不再继续循环了 例9 13输出两个10以内的数 两数的和是5的整数倍 inti j for i 1 i 10 i for j 1 j 5 j if i j 5 0 printf d d i j break continue语句用来结束本次循环 w

12、hile do while for 跳过循环体中continue之后尚未执行的语句 接着进行终止条件的判断 以决定是否继续循环 它的格式为 continue continue语句 例9 15求1 100之间除7的倍数之外其他数的和 intsum 0 inti 1 while i 100 if i 7 0 i continue sum sum i i 仅由一个分号组成的语句为空操作语句 空语句不做任何操作 它在一些特殊情况下是很有用的 如用循环来跳过输入字符开始的空格或制表符 while c getchar c t 不要以为空语句不做任何操作就可以滥用它 有时会造成语法错误 空语句 if d 0

13、 x 1 else x 2 程序 函数的集合函数 语句的集合语句 简单语句 复合语句简单语句 变量定义与初始化语句 赋值语句 函数调用语句 自增 减 语句 return 空语句 复合语句 if else switch case default while do while for 语句与控制流 语句与控制流 分支控制语句和循环控制语句中大括号 括起来的语句 可以是简单语句 也可以是这两种复合语句本身 这样 C语言程序中的语句就形成了一种嵌套的层次结构 并且原则上这种嵌套的层次是可以不断扩大的 程序控制语句的嵌套 if while if elseif else else 控制台输入和输出 输入输

14、出是程序的一个重要组成部分 程序运行需要的数据要从外设 如键盘 文件等 得到 程序的运行结果通常也要输出到外设 如显示器 打印机 文件等 中去 控制台输入输出是指从标准输入设备获得数据以及把程序结果从标准输出设备输出 标准输入设备 键盘标准输出设备 显示器C语言提供了一些专门用于输入输出的函数来实现控制台的数据输入输出 这些函数的定义包含在stdio h文件中 1 数据输入 1 单个字符输入 intgetchar 返回的是字符的ASCII码 2 格式化输入 intscanf constrol string arg1 arg2 charch ch getchar 例9 18inti result

15、 floatfp charc s 81 result scanf d f c s 输入函数scanf 的进一步说明 1 功能 从键盘输入数据 放入存放变量的主存空间 2 格式 scanf 格式控制 输入项 格式控制的内容 格式说明符 字母 scanf 的基本格式控制符有 d 整型 int ld 长整型 long c 字符型 char s 字符串 f 单精度浮点数 float lf 双精度浮点数 double 注意 如果格式控制部分有普通字符 需原样输入 输入项 2 数据输出 1 单个字符输出 intputchar int 2 格式化输出 intprintf constrol string ar

16、g1 arg2 例9 19inti 1 floatfp 0 5 charc a s 81 abcde printf d f c s n i fp c s charch A putchar ch 输出函数printf 的进一步说明 作用 显示语句或按指定格式输出程序运行结果 格式 printf 格式控制 输出项系列 说明1 格式控制含两方面内容 A 普通字符 需原样输出B 格式控制符或转义字符说明2 输出项个数与格式说明符个数应一致 且类型匹配 输出控制 printf 的基本格式控制符有 d 整数 int ld 整数 long c 字符 char s 字符串 字符数组 f 浮点数 float double 缺省输出6位小数 e 浮点数 double 以科学计数法输出 其输出格式为 m nnnnnne xx 例9 20一个包含输入输出语句的完整程序 includeintmain inti result floatfp charc s 81 printf n nEnteranint afloat acharandastring n result scanf d f c s 算法是对计算机解决

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号