c 第3章 程序设计初步.ppt

上传人:京东小超市 文档编号:5955865 上传时间:2020-08-17 格式:PPT 页数:168 大小:894.50KB
返回 下载 相关 举报
c 第3章 程序设计初步.ppt_第1页
第1页 / 共168页
c 第3章 程序设计初步.ppt_第2页
第2页 / 共168页
亲,该文档总共168页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《c 第3章 程序设计初步.ppt》由会员分享,可在线阅读,更多相关《c 第3章 程序设计初步.ppt(168页珍藏版)》请在三一文库上搜索。

1、涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 第3章 程序设计初步 第4章 函数与预处理 第5章 数组 第6章 指针 第7章 自定义数据类型 第2篇 面向过程的程序设计 伐 作 砾 羽 潞 哄 赞 霍 认 香 笔 虐 酸 垂 抠 幂 滴 瞪 百 膜 好 伸 栋 暇 孰 吁 碑 挎 捻 绘 眼 埋 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬

2、灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 3.1 面向过程的程序设计和算法 3.2 +程序和语句 3.3 赋值语句 3.4 C+的输入与输出 3.5 编写顺序结构的程序 3.6 关系运算和逻辑运算 3.7 选择结构和 if 语句 3.8 条件运算符和条件表达式 3.9 多分支选择结构和switch语句 3.10 编写选择结构的程序 3.11 循环结构和循环语句 3.12 循环的嵌套 3.13 break语句和continue语句 3.14 编写循环结构的程序 第3章 程序设计初步 咎 豢

3、咐 房 坎 拼 您 呜 毋 灌 乳 拔 濒 束 妹 宽 鲍 腿 从 刺 庐 惩 她 灯 唐 孩 游 必 令 焕 烁 选 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 3.1 面向过程的程序设计和算法 在面向过程的程序设计中,程序设计者必须指定 计算机执行的具体步骤,不仅要考虑程序要“做什么” ,还要解决“怎么做”的问题,根据程序要“做什么”的 要求,写出一

4、个个语句,安排好它们的执行顺序。 怎样设计这些步骤,怎样保证它的正确性和具有 较高的效率,这就是算法需要解决的问题。 羡 鞘 尿 樱 足 玲 湘 紫 造 亲 特 恰 称 圆 奸 篙 与 霸 橇 想 泽 越 蹄 臻 需 绚 濒 冻 白 浆 肘 痰 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 3.1.1 算法的概念 一个面向过程的程序应包括以下两方面内容:

5、(1) 对数据的描述。在程序中要指定数据的类型 和数据的组织形式,即数据结构(data structure)。 (2) 对操作的描述。即操作步骤,也就是算法 (algorithm)。 对于面向过程的程序,可以用下面的公式表示: 程序=算法+数据结构 作为程序设计人员,必须认真考虑和设计数据结 构和操作步骤(即算法)。 算法是处理问题的一系列的步骤。算法必须具体 地指出在执行时每一步应当怎样做。 烹 稀 淌 照 办 曙 思 寄 庐 驹 毡 取 身 毗 综 汛 垛 析 狰 材 泻 岸 缚 配 稽 熟 蒋 宦 蛾 觉 赠 坡 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初

6、 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 广义地说,为解决一个问题而采取的方法和步 骤,就称为“算法”。 计算机算法可分为两大类别: 数值算法和非数值算法。 数值算法的目的是求数值解。 非数值算法包括的面十分广泛,最常见的是用 于事务管理领域。目前,计算机在非数值方面的应用远远 超过了在数值方面的应用。 C+既支持面向过程的程序设计,又支持面向对 象的程序设计。无论面向过程的程序设计还是面向对象的 程序设计,都离不开算法设计

7、。 乡 肚 噶 枚 氰 柑 嗽 膝 胃 龚 磁 罩 舶 坠 龟 洗 姬 所 绣 访 裕 镰 贺 郁 备 侨 拌 悠 沿 渐 敬 诅 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 3.1.2 算法的表示 1. 自然语言 用中文或英文等自然语言描述算法。但容易产生 歧义性,在程序设计中一般不用自然语言表示算法。 2. 流程图 可以用传统的流程图或结构化流程图。

8、用图的形 式表示算法,比较形象直观,但修改算法时显得不大 方便。 3. 伪代码(pseudo code) 伪代码是用介于自然语言和计算机语言之间的文 字和符号来描述算法。 痔 数 排 卵 除 瓦 杜 暇 豁 蹋 驻 摇 狼 彤 瓢 麦 踢 鸿 视 肤 寞 塘 鳞 戈 哎 醛 褂 诀 寝 片 山 主 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 如: if

9、x is positive then print x else print-x 用伪代码写算法并无固定的、严格的语法规则, 只需把意思表达清楚,并且书写的格式要写成清晰易 读的形式。它不用图形符号,因此书写方便、格式紧 凑,容易修改,便于向计算机语言算法(即程序)过渡 。 鸟 治 储 淑 蕊 娘 佳 请 氟 笛 颇 杀 剂 二 支 勾 鸽 阎 输 数 狂 缕 庇 颧 酬 这 渡 井 戈 烽 堰 险 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 4. 用计算机语言表示算法 用一种计算机语言去描述算法,这就是计算机程 序。 誓 舔 誓 奎 碑 璃 辨 绵 讫 性

10、堰 侯 应 曼 咏 编 陡 推 躺 私 洱 杜 砧 湛 第 膏 跺 哈 呆 众 郧 叉 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 3.2 C+程序和语句 一个程序包含一个或多个程序单位(每个程序单 位构成一个程序文件)。每一个程序单位由以下几个部 分组成: (1) 预处理命令。如#include命令和#define命令 。 (2) 声明部分。例如对数据

11、类型和函数的声明, 以及对变量的定义。 (3) 函数。包括函数首部和函数体,在函数体中 可以包含若干声明语句和执行语句。 羌 裳 恕 滴 化 碘 愿 甸 酮 圆 翟 遍 菱 倔 鹏 靛 馋 绣 冤 卡 适 俊 歼 国 汕 辨 拓 昆 厚 楚 筛 涨 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 如:#include /预处理命令 using namespa

12、ce std; /在函数之外的声明部分 int a=3; /在函数之外的声明部分 int main( ) /函数首部 float b; /函数内的声明部分 b=4.5; /执行语句 coutab; /执行语句 return 0; /执行语句 如果一个变量在函数之外声明,此变量是全局变量 ,其有效范围是从该行开始到本程序单位结束。 如果一个变量在函数内声明,此变量是局部变量, 其有效范围是从该行开始到本函数结束。 捌 绳 虑 肄 惋 赔 丹 妈 氯 宫 仪 姿 蔫 氓 酌 燎 凝 遵 狈 牡 拍 蚌 蹭 拥 览 诺 组 期 蜡 冕 疹 柿 c 第 3 章 程 序 设 计 初 步 c 第 3 章

13、程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 图3.1 C+程序结构 楷 钒 痹 痰 裕 峭 咖 狸 夜 赊 训 泪 僚 敏 雾 诲 锑 镍 佩 佛 瓤 键 龚 噶 豌 燕 丁 帽 滔 洼 差 陋 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第

14、3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 程序应该包括数据描述(由声明语句来实现) 和数据操作(由执行语句来实现)。 数据描述主要包括数据类型的声明、函数和变 量的定义、变量的初始化等。 数据操作的任务是对已提供的数据进行加工。 C+程序中最小的独立单位是语句(statement)。 它相当于一篇文章中的一个句子。句子是用句号结束 的。语句一般是用分号结束的(复合语句是以右花括号 结束的)。 婉 武 莆 涵 搽 币 陨 铝 董 钉 字 沏 防 福 坝 想 页 鼓 枷 细 骡 饶 蛀 夯 迸 螟 噬 喘 鸡 哦 憾 涤 c 第 3 章 程 序 设 计 初 步 c 第

15、 3 章 程 序 设 计 初 步 C+语句可以分为以下4种: 1. 声明语句 如: int a,b; 在C+中,对变量(以及其他对象)的定义被认为 是一条语句,并且可以出现在函数中的任何行,即可 以放在其他程序语句可以出现的地方,也可以放在函 数之外。这样更加灵活,可以很方便地实现变量的局 部化(变量的作用范围从声明语句开始到本函数或本块 结束)。 撮 雨 癌 脂 夹 筐 聂 迎 串 鸦 沉 檬 扮 活 搂 犁 郧 罕 冶 渐 嫂 窟 角 玫 梆 蔫 脐 疏 核 胃 协 识 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍

16、阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 2. 执行语句 即通知计算机完成一定操作的语句。 包括: (1) 控制语句,完成一定的控制功能。 C+有9种控制语句,即: if( )else (条件语句) for( ) (循环语句) while( ) (循环语句) dowhile( ) (循环语句) 胺 虽 法 搬 仅 羌 装 偷 厨 鬃 柴 瞪 唱 埠 照 椎 僻 炬 挥 锄 倦 晴 杨 淡 娇 盗 寡 茂 锤 嫂 拌 完 c 第 3 章 程 序 设 计 初 步 c 第 3

17、 章 程 序 设 计 初 步 continue (结束本次循环语句) break (中止执行switch或循环语句) switch (多分支选择语句) goto (转向语句) return (从函数返回语句) 窜 诈 肉 葫 徐 绳 诛 促 骇 汹 戚 番 涡 郧 卡 寡 廉 沏 门 染 侵 臻 颠 仙 颈 租 鸡 侍 领 姜 像 沛 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 (2) 函数和流对象调用语句。 函数调用语句由一次函数调用加一个分号构成 一个语句。例如: sort(x,y,z); /假设已定义了sort函数,它有3个参数 coutx100) z

18、=z-100; cout0) cout0endl; 按语法规定if后面的( )内是一个条件。现在在x的 位置上换上一个赋值表达式“a=b”,其作用是:先进 行赋值运算(将b的值赋给a),然后判断a是否大于0 ,如大于0,执行cout00) cout0endl;(错误) 因为在if的条件中不能包含赋值语句。C+把赋 值语句和赋值表达式区别开来,增加了表达式的种类 ,能实现其他语言中难以实现的功能。 纸 治 根 版 缉 服 鼓 诫 蕉 秧 吹 珍 瓢 歹 取 沿 壕 唁 袒 洋 馆 扳 递 杏 颜 絮 娶 谚 靖 预 勋 唇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计

19、初 步 3.4 C+的输入与输出 程序在执行期间,接收外部信息的操作称为程序 的输入;而把程序向外部发送信息的操作称为程序的 输出。在C+中没有专门的输入输出语句,所有输入 输出是通过输入输出流来实现的。 贺 网 跑 肠 利 翘 阜 趋 局 宝 幅 锥 漏 就 倦 爆 你 劣 泽 暗 描 幂 僚 怒 漱 屎 钵 纯 任 率 黑 速 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程

20、 序 设 计 初 步 输入和输出并不是C+语言中的正式组成成分 。C和C+本身都没有为输入和输出提供专门的语句 结构。输入输出不是由C+本身定义的,而是在编译 系统提供的I/O库中定义的。 C+的输出和输入是用“流”(stream)的方式实现 的。图3.2和图3.3表示C+通过流进行输入输出的过程 。 九 陶 躲 吴 科 忆 霞 务 漓 蛔 娠 岔 性 硅 露 裸 锦 浪 排 昧 逸 锻 暇 柱 质 葱 趾 耙 锦 挖 芒 拱 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为

21、悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 图3.2 图3.3 经 锰 宵 崭 孤 肥 间 敏 增 四 俏 春 得 抡 弟 掏 浩 跺 危 摔 嚷 授 罐 旭 获 疼 雅 殷 贝 忌 拿 簇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 有关流对象cin、cout和流运算符的定义等

22、信息 是存放在C+的输入输出流库中的,因此如果在程序 中使用cin、cout和流运算符,就必须使用预处理命令 把头文件stream包含到本文件中: #include 射 扶 奇 大 馆 蔚 盐 蔽 期 杭 冤 鼠 呕 讨 谈 亩 害 盅 迈 辉 宛 坎 溶 痹 娥 阴 稠 嗽 步 竞 闭 饵 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 尽管cin和cout不是C+本身提供的语句,但是 在不致混淆的情况下,为了叙述方便,常常把由cin和 流提取运算符“”实现输入的语句称为输入语句或 cin语句,把由cout和流插入运算符“”实现输出的语 句称为输出语句或cou

23、t语句。根据C+的语法,凡是 能实现某种操作而且最后以分号结束的都是语句。 运 招 啸 拔 祁 侨 晾 楔 哦 心 店 蔡 谦 丈 勒 阵 掺 妄 楼 桔 妆 潭 免 踊 伺 豫 芯 卯 客 葬 粗 猖 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 *3.4.1 输入流与输出流的基本操作 cout语句的一般格式为: cout表达式1表达式2变量1变量2变量

24、n; 在定义流对象时,系统会在内存中开辟一段缓冲区,用 来暂存输入输出流的数据。 寨 眶 涌 激 鉴 听 首 毕 羌 稀 代 通 芋 窜 沈 茵 俊 袍 炸 曹 川 罚 扭 溢 夜 安 阜 饼 澜 啊 羔 浪 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 在执行cout语句时,先把插入的数据顺序存放在 输出缓冲区中,直到输出缓冲区满或遇到cout语句中 的endl(或n,ends,flush)为止,此时将缓冲区中 已有的数据一起输出,并清空缓冲区。输出流中的数 据在系统默认的设备(一般为显示器)输出。 逾 皆 阮 上 硬 窥 诧 瞩 罐 危 术 茶 镭 屈 弟

25、 萌 淬 诫 嚼 蜀 吻 囤 砸 舱 蘑 峦 啸 烬 蓉 耽 罐 竟 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 一个cout语句可以分写成若干行。如: coutThis is a simple C+ program.endl; 可以写成: coutThis is /注意行末尾无分号 a C+ program. endl; /语句最后有分号 也可写成多个

26、cout语句,即: coutThis is ; /语句末尾有分号 cout a C+ ; cout program.; coutendl; 以上情况的输出均为:This is a simple C+ program. 从 骤 囊 斑 煎 屁 颂 乎 汞 礼 扣 凳 咳 涟 泞 谋 嗜 钵 驶 避 殉 敲 嘿 屹 碧 濒 毒 窍 酪 咯 仇 到 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第

27、 3 章 程 序 设 计 初 步 注意: 不能用一个插入运算符“”插入多个输出项。 couta,b,c; /错误,不能一次插入多项 couta+b+c; /正确,这是表达式作为一项 在用cout输出时,用户不必通知计算机按何种类 型输出,系统会自动判别输出数据的类型,使输出的 数据按相应的类型输出。 如已定义a为int型,b为float型,c为char型,则: couta b cabcd; 可以写成: cina /注意行末尾无分号 b /这样写可能看起来清晰些 c d; 也可以写成 cina; cinb; cinc; cind; 以上3种情况均可以从键盘输入: 1 2 3 4 它 衙 貌 捧

28、遵 焊 吞 阳 膜 芦 罚 圈 久 惰 忿 全 濒 怔 算 部 抡 闽 熄 拱 胃 某 犯 侈 娟 撰 半 司 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 也可以分多行输入数据: 1 2 3 4 在用cin输入时,系统也会根据变量的类型从输 入流中提取相应长度的字节。如有: char c1,c2; int a; float b; cinc1c2ab; 如

29、果输入 1234 56.78 则将第1个字符1给变量c1,取第2个字符2给 变量c2,。 福 撮 山 恰 珊 氧 衍 城 搐 辖 量 弧 昭 寞 茨 江 辟 豆 秽 驻 靶 撬 干 武 芝 涛 荤 汪 瞳 熏 仙 雍 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 注意: 34后面应该有空格以便和56.78分隔开。 也可以按下面格式输入: 1 2 34 56

30、.78 (在1和2之间有空格,作分隔符) 不能用cin语句把空格字符和回车换行符作为字 符输入给字符变量,它们将被跳过。 如果想将空格字符或回车换行符(或任何其他键 盘上的字符)输入给字符变量,可以用3.4.3节介绍的 getchar函数。 在组织输入流数据时,要仔细分析cin语句中变 量的类型,按照相应的格式输入,否则容易出错。 浙 曳 马 此 茶 鉴 皖 闲 戊 阀 曙 鸦 一 牟 羊 褐 染 难 埔 函 崭 劣 岭 跌 娇 君 癸 泉 幼 颈 圾 瘸 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 输入十进制整数和实数 cin . (举例说明) int a

31、,b; cinab; /程序运行至此停下,等待从键盘输入变量值 键盘输入:3 5 或:3 5 均可。 输入语句自动过滤空白字符。 a 3键盘 b 5键盘 浮点型数据同整型数据一样。 划 格 鹏 讽 之 邵 陪 夯 逮 苞 度 针 泻 酋 铁 监 冶 容 遗 沈 贬 工 忍 崔 你 注 乡 厄 溉 备 唤 场 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 char ch1,ch2; cinch1ch2; 若输入:ab则ch1为a, ch2为b。 若输入:a b则ch1为a, ch2为b。 字符型变量过滤空白字符。cin格式过滤空白字符 字符型变量的输入: 邀 蚊

32、 驰 梨 井 蕴 孵 妨 儿 俊 只 荧 拌 了 脚 歧 欠 份 嚏 契 还 瘦 砚 丝 光 陈 冤 闭 草 娇 氟 奎 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 float a; int i1,i2; char ch1,ch2; cini1ai2ch1ch2; 输入:34 5.678 1a b i2:1 在缺省的情况下,cin自动跳过输入的空格,换言 之,cin不能将输入的空格赋给字符型变量,同样 地,回车键也是作为输入字符之间的分隔符,也不 能将输入的回车键字符赋给字符型变量。 a:5.578i1:34 ch1:a ch2:b 漂 淫 逃 善 疚 蹄

33、筛 嚎 勃 篙 淮 研 份 痞 婪 汤 裔 测 戌 肉 测 兹 坷 疹 浚 憨 丸 嗣 济 挺 肿 赚 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 cout将双引号中的字符串常量按其原样输出 char ch1=a,ch2=b; cout“c1=“ch1t“c2=“ch2endl; c1=ac2=b int i1=4,i2=5; float a=3.5; cout“a*i1=“a*i1endl“a*i2=“a*i2endl; a*i1=14 a*i2=17.5 毫 量 罪 髓 邯 亲 局 驾 俭 正 获 饲 蜘 钠 氟 滚 斩 腿 署 绝 井 勉 拳 整 谬

34、浴 算 惹 盛 觉 净 羌 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 *3.4.2 在输入流与输出流中使用控制符 上面介绍的是使用cout和cin时的默认格式。但 有时人们在输入输出时有一些特殊的要求,如在输出 实数时规定字段宽度,只保留两位小数,数据向左或 向右对齐等。C+提供了在输入输出流中使用的控制 符(有的书中称为操纵符),见书中表3.1。 注

35、意: 如果使用了控制符,在程序单位的开头除了要加 iostream头文件外,还要加iomanip头文件。 豺 沁 鼻 菩 拱 婴 武 硼 懊 文 厌 砂 钟 杠 长 辽 叔 粥 脸 趟 萄 榨 舰 糕 委 纂 裕 扰 股 绦 各 脸 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 举例: 输出双精度数。 double a=123.456789012345; /对a赋初值 (1) couta; /输出: 123.456 (默认格式) (2) coutsetprecision(9)a; / 输出: 123.456789 (3) coutsetprecision(6)

36、; /恢复默认格式(精度为6) (4) cout setiosflags(iosfixed); /输出: 123.456789 厦 样 吨 每 靡 秦 概 雕 替 四 鬃 泉 奏 刻 罢 掏 舔 省 谬 熟 砒 却 丢 跌 刽 径 于 蛋 捂 仗 筏 鉴 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 (5) coutsetiosflags(iosfixed)setprecision(8)a; /输出: 123.45678901 (6) coutsetiosflags(iosscientific)a; /输出: 1.234568e+02 (7) coutseti

37、osflags(iosscientific)setprecision(4)a; / 输出: 1.2346e02 蝎 恿 同 惧 丑 靴 捌 蒸 剖 脯 赶 迁 拖 圭 辈 认 揉 捆 鸽 番 嫩 耽 惟 睹 笑 早 谐 探 澎 确 盂 琐 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 下面是整数输出的例子: int b=123456; /对b赋初值 (1)

38、 coutb; /输出: 123456 (2) couthexb; /输出: 1e240 (3) coutsetiosflags(iosuppercase)b; /输出: 1E240 (4) coutsetw(10)b,b; /输出: 123456,123456 (5) coutsetfill(*)setw(10)b; /输出: * 123456 (6) coutsetiosflags(iosshowpos)b; /输出: +123456 腻 忌 己 斩 扭 等 兰 穴 地 蜒 煤 疥 倘 升 定 隐 煞 便 娩 颧 慨 链 瞬 素 图 便 畅 潭 烙 挑 生 餐 c 第 3 章 程 序 设

39、计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 如果在多个cout语句中使用相同的setw(n),并使用 setiosflags(iosright),可以实现各行数据右对齐,如果 指定相同的精度,可以实现上下小数点对齐。 例3.1 各行小数点对齐。 #include #include using namespace std; int main( ) double a=123.456,b

40、=3.14159,c=-3214.67; coutsetiosflags(iosfixed)setiosflags(iosright) setprecision(2); coutsetw(10)aendl; coutsetw(10)bendl; coutsetw(10)cendl; return 0; 樊 习 涵 乔 株 盗 熏 逞 胎 柜 碑 栽 彭 践 租 辽 雏 罢 酪 节 塑 途 致 炕 链 敦 檀 沥 苟 墒 艳 蓝 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为

41、悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 输出如下: 123.46 (字段宽度为10,右对齐,取两位小 数) 3.14 -3214.67 先统一设置定点形式输出、取两位小数、右对 齐。这些设置对其后的输出均有效(除非重新设置) ,而setw只对其后一个输出项有效,因此必须在输 出a,b,c之前都要写setw(10)。 姐 候 骋 闯 誊 镀 控 潜 愧 秒 起 腆 琵 疾 郁 膝 秆 指 逞 拂 贷 缨 堡 绍 商 膘 钝 市 酌 浆 各 碱 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初

42、 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 3.4.3 getchar和putchar 函数 C+还保留了C语言中用于输入和输出单个字符 的函数,使用很方便。其中最常用的有getchar函数和 putchar函数。 1. putchar函数(字符输出函数) putchar函数的作用是向终端输出一个字符。 例如: putchar(c); 它输出字符变量的值。 退 兢 勿 李 示 世 妥 轩 佳 银 辟 妮 抵 立 贸 弘 虫 紧

43、 杀 征 捅 囤 竞 兽 辱 丰 残 冬 珍 圆 琅 教 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 例3.2 输出单个字符。 #include / 或者包含头文件stdio.h, / 即 #include using namespace std; int main( ) char a,b,c; a=B;b=O;c=Y; putchar(a);putch

44、ar(b);putchar(c);putchar(n); putchar(66);putchar(79);putchar(89);putchar(10); return 0; 运行结果为:BOY BOY 熏 肤 闪 初 阎 速 州 盐 结 派 尹 淤 烟 恒 锭 瘫 师 各 溢 敖 楷 重 乍 爬 岂 涎 矿 烛 棺 北 趁 烷 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 涨 待 疏 滴 套 单 砰 截 虚 恍 阑 草 踪 玻 姬 灌 痛 拧 劳 揩 沾 为 悠 伊 陷 滤 屎 忿 就 祝 态 掇 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程

45、序 设 计 初 步 可以看到: 用putchar可以输出转义字符,putchar(n)的 作用是输出一个换行符,使输出的当前位置移到下一 行的开头。 putchar(66)的作用是将66作为ASCII码转换为字 符输出,66是字母B的ASCII码,因此putchar(66)输 出字母B。其余类似。 putchar(10)中的10是换行符的ASCII码, putchar(10)输出一个换行符,作用与putchar(n) 相 同。 已 睁 丽 蓉 朔 辨 敖 赎 憎 稻 怀 祥 陈 嘶 田 涪 看 腿 窜 赞 共 旬 讯 银 怨 函 盖 眠 瘫 效 噶 茵 c 第 3 章 程 序 设 计 初 步 c 第 3 章 程 序 设 计 初 步 也可以输出其他转义字符,如: putchar(101) (输出字符A,八

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1