华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第七讲 输入输出与(C 语言)文件操作

目录页 Contents 1 C++基本输入输出 2 C语言格式化输出 3 C语言文件读写 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 目录页 Contents 1 2 C++ 基本输入输出 C 语言格式化输出 3 C 语言文件读写

C++基本输人输出 口数据流 操纵符 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan C++ 基本输入输出 数据流 操纵符

I/O基本概念 C++本身没有输入输出语句。 C++中的输入输出是通过相应的I/0流类库实现的。 数据流 将数据从一个对象到另一个对象的流动抽象为“流” ●提取(读):从流对象中获取数据,运算符为">>" 。插入(写):向流对象中添加数据,运算符为"<<" 提取和插入运算符是所有标准C++数据类型预先设计的 插入运算符与操纵符一起使用,可以控制输出格式 4 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan I/O 基本概念 4 C++本身没有输入输出语句。 C++中的输入输出是通过相应的I/O流类库实现的。 将数据从一个对象到另一个对象的流动抽象为“流” 提取(读):从流对象中获取数据,运算符为 ">>" 插入(写):向流对象中添加数据,运算符为 "<<" 提取和插入运算符是所有标准 C++数据类型预先设计的 插入运算符与操纵符一起使用,可以控制输出格式 数据流

输入输出操作 口头文件iostream中预定义的四个输入输出对象 ▣cin:标准输入(键盘等) 口cout:标准输出(屏幕、打印机等) ▣cer:标准错误输出,没有缓冲,立即被输出 口clog:与cerr类似,但有缓冲,缓冲区满时被输出 操纵符 口用于控制数据的输出格式 ▣两种途径:iomanip头文件和ios base类 5 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 输入输出操作 5 cin:标准输入(键盘等) cout:标准输出(屏幕、打印机等) cerr:标准错误输出,没有缓冲,立即被输出 clog:与cerr类似,但有缓冲,缓冲区满时被输出 头文件 iostream 中预定义的四个输入输出对象 操纵符 用于控制数据的输出格式 两种途径:iomanip 头文件和 ios_base 类

操纵符 (需包含头文件iomanip) 操纵符 含义 endl 插入换行符,并刷新流 setw(n) 设置域宽 cout.width(n) setfill((字符) 设置填充符 cout.fil(字符) left right 对齐方式(左对齐/右对齐),缺省右对齐 fixed 使用定点方式输出 scientific 使用指数形式 setprecision(n) 设置输出的有效数字个数; 若在fixed或scientific后使用,则设置小数位数 showpoint 显示小数点及尾随零,即使没有小数部分 6 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 操纵符 6 操纵符 含义 endl 插入换行符,并刷新流 setw(n) cout.width(n) 设置域宽 setfill(字符) cout.fill(字符) 设置填充符 left / right 对齐方式(左对齐/右对齐),缺省右对齐 fixed 使用定点方式输出 scientific 使用指数形式 setprecision(n) 设置输出的有效数字个数; 若在 fixed 或 scientific 后使用,则设置小数位数 showpoint 显示小数点及尾随零,即使没有小数部分 (需包含头文件 iomanip )

操纵符(域宽) ▣设置宽度:setw(宽度)或cout.width(宽度) intA[3][3]={{11,12,13},{21,22,23},31,32,33}}; for (int i=0;i<3;i++) for (int j=0;j<3;j++) cout<setw(4)<A[i][j];/∥设置输出宽度 ex07_setw.cpp for (int i=0;i<3;i++) for (int j=0;j<3;j++) { cout.width(4);/∥设置输出宽度 cout <A[i][j]; setw和cout.width只改变紧随其后的域,即只起一次作用 ·若数据超过设置的宽度,则自动扩展到所需最少宽度 7 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 操纵符(域宽) 7 设置宽度:setw(宽度) 或 cout.width(宽度) ► setw 和 cout.width 只改变紧随其后的域,即只起一次作用 ► 若数据超过设置的宽度,则自动扩展到所需最少宽度 int A[3][3]={{11,12,13},{21,22,23},{31,32,33}}; for (int i=0; i<3; i++) for (int j=0; j<3; j++) cout << setw(4) << A[i][j]; // 设置输出宽度 for (int i=0; i<3; i++) for (int j=0; j<3; j++) { cout.width(4); // 设置输出宽度 cout << A[i][j]; } ex07_setw.cpp

操纵符(填充符) 口设置填充符:setfill(字符)或cout.fill(字符) intA[3][3]={11,12,13},{21,22,23},{31,32,33}; /cout.fi11('*);/∥设置填充符 cout<setfi:11('*');/设置填充符 for(int i=0;i<3;i++) for(int j=0;j<3;j++) cout<setw(4)<A[i][j];/∥设置输出宽度 ex07_fill.cpp 缺省的填充符为空格 ·该命令的作用将一直保留,直到下次改变为止 8 http://math.ecnu.edu.cn/-jypan
http://math.ecnu.edu.cn/~jypan 操纵符(填充符) 8 设置填充符:setfill(字符) 或 cout.fill(字符) ► 缺省的填充符为空格 ► 该命令的作用将一直保留,直到下次改变为止 int A[3][3]={{11,12,13},{21,22,23},{31,32,33}}; // cout.fill('*'); // 设置填充符 cout << setfill('*'); // 设置填充符 for(int i=0; i<3; i++) for(int j=0; j<3; j++) cout << setw(4) << A[i][j]; // 设置输出宽度 ex07_fill.cpp

操纵符(对齐方式) 口设置对齐方式:left/right intA[3][3]={{11,12,13),{21,22,23},{31,32,33}; cout<1eft;/∥设置左对齐 for(int i=0;i<3;i++) { for(int j=0;j<3;j++) cout <setw(4)<<A[i][j]; cout <"\n"; ex07_left.cpp 缺省为右对齐 ·left/right的作用是持久的,直到遇到下一个同类型命令 9 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 操纵符(对齐方式) 9 设置对齐方式:left / right ► 缺省为右对齐 ► left/right 的作用是持久的,直到遇到下一个同类型命令 int A[3][3]={{11,12,13},{21,22,23},{31,32,33}}; cout << left; // 设置左对齐 for(int i=0; i<3; i++) { for(int j=0; j<3; j++) cout << setw(4) << A[i][j]; cout << "\n"; } ex07_left.cpp

操纵符(浮点数输出格式) 口以定点格式输出浮点数:fixed cout<fixed;∥定点格式 for (int i=0;i<3;i++) cout <a[i]; ▣ 以科学计数法(指数形式)输出浮点数:scientific ex07_fixed_scientific.cpp doub1ea[3]={2.7182818,31.416,987080}; cout<scientific;/∥以指数形式输出 for (int i=0;i<3;i++) cout <a[i]; 10 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 操纵符(浮点数输出格式) 10 以定点格式输出浮点数:fixed 以科学计数法(指数形式)输出浮点数:scientific double a[3]={2.7182818, 31.416, 987000}; cout << scientific; // 以指数形式输出 for (int i=0; i<3; i++) cout << a[i]; ex07_fixed_scientific.cpp cout << fixed; // 定点格式 for (int i=0; i<3; i++) cout << a[i];

操纵符(浮点数精度) 口设置输出精度:setprecision doub1ea[3]={2.7182818,31.416,987080}; cout <setprecision(3); for (int i=0;i<3;i++) cout <a[i]; ex07_setprecision.cpp 缺省为输出小数点后6位 建议 用单独一条语句设置全局类指令 11 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 操纵符(浮点数精度) 11 设置输出精度:setprecision ► 缺省为输出小数点后 6 位 double a[3]={2.7182818, 31.416, 987000}; cout << setprecision(3); for (int i=0; i<3; i++) { cout << a[i]; } ex07_setprecision.cpp 建议 用单独一条语句设置全局类指令
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C++ 语言程序设计》课程教学资源(应用阅读)Pointers and Memory.pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)内存分配——栈和堆.pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)Fast and stable matrix multiplication.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)Gauss消去法求解线性方程组.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)矩阵乘积快速算法——Strassen 算法.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第六讲 指针.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第五讲 数组(二)字符数组(字符串).pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第五讲 数组(一)数值数组.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第四讲 函数.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)定积分的近似计算(数值积分).pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)定积分数值计算.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第三讲 选择与循环.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第二讲 C++编程基础.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第一讲 计算机基础知识.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)IEEE浮点运算标准.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)课程介绍(授课教师:潘建瑜).pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)C++ 程序设计简明讲义(共十六讲).pdf
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)08 互联网营销方案策划.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)07 互联网直播营销.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)06 互联网视频营销.pptx
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第八讲 排序算法.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第九讲 类与对象(I)面向对象基础.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十讲 类与对象(II)面向对象进阶.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十一讲 类与对象(III)面向对象提高.pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)C++ vector使用方法.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十二讲 运算符重载与自动类型转换.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十三讲 继承与派生.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十四讲 多态.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十五讲 文件流与输出输入重载.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十六讲 标准模板库(Standard Template Library,STL).pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)C++ Reference Card(C++ RC by Greg Book,2002).pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)C++ RC by Mississippi State U.(2009).pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)ASCII码(256完整版)The ASCII Character Set.pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)ASCII 码——常用ASCII码.pdf
- 西安电子科技大学:《操作系统》课程教学资源(PPT课件)Introduction(主讲:苏锐丹).pptx
- 西安电子科技大学:《操作系统》课程教学资源(PPT课件)Operating-System Structure.pptx
- 西安电子科技大学:《操作系统》课程教学资源(PPT课件)Processes.pptx
- 《移动互联网技术》课程教学资源(培训教材)Cisco Press - Building the Mobile Internet(Mark Grayson, Kevin Shatzkamer, Klaas Wierenga).pdf
- 西安电子科技大学:《移动互联网技术》课程教学资源(PPT课件)01 课程介绍(主讲:苏锐丹).ppt
- 西安电子科技大学:《移动互联网技术》课程教学资源(PPT课件)02 移动互联网概述.ppt