C++ 输入输出流(1)
计算机等级考试二级C辅导材料(C语言基本语句)

⑺ f格式符:用来输出实数(包括单、双精 度),以小数形式输出。有以下几种用法: ① %f:整数部分全部输出,并输出6位小数。 但并非所有的数字为有效数字。 ② %m.nf:指定输出的数据共占m列,小数为 n位。如数字长度小于m,则左补空格。 ③ %-m.nf:含义同上,区别在于数字长度小 于m,则右补空格。
三.字符数据的输入及输出 1.putchar()函数 原型:int putchar(int ch) 功能:以字符的形式在屏幕上显示ch的值。ch可以字符变量、 整型变量、字符常量、整型常量,也可是相应的表达式。该 函数的返回值为输出字符的ASCII码值。 2.getchar()函数 原型:int getchar() 功能:接收从键盘上输入的任何一个字符,可理解为该函数 的值就是从键盘上得到字符的ASCII码值。 说明:该函数只能接收一个字符,getchar()函数得到的字符 可以赋给一个字符变量或整型变量,也可不赋给任何变量, 而作为表达式的一部分。 考虑:若键盘上输入a↙b↙c↙,将a、b、c这三个字符分别 送入c1、c2、c3三个变量中,对应的getchar()调用语句应是 什么。
输出表列:是需要输出的数据,由常量、变量、 函数、表达式所组成,用逗号作为分隔符的 表列。如果输出项含有表达式,则表达式的 求值顺序按从右向左进行。 实际上,printf()函数的一般形式为: printf(参数1,参数2,……,参数n)
2.格式字符 ⑴ d格式符。 用来输出十进制整数。有以下几种用法: ① %d:按整型数据的实际长度输出。 ② %md:m为指定的输出字段的宽度。如数 据的位数小于m,则左补空格,若大于m, 则按实际大小输出。 ③ %ld:输出长整型数据,在其格式符的左面 也可加字段宽度修饰。 一个int型数据可以用%d或%ld格式输出。
C语言程序设计第五次作业——循环结构(1)

C语⾔程序设计第五次作业——循环结构(1)(⼀)改错题输出华⽒摄⽒温度转换表:输⼊两个整数lower和upper,输出⼀张华⽒摄⽒温度转换表,华⽒温度的取值范围是{lower,upper},每次增加2℉。
计算公式如下:c = 5×(f-32)/9其中,c表⽰摄⽒温度,f表⽰华⽒温度。
输⼊输出样例1: Enter lower:32 Enter upper:35 fahr celsius 32 0.0 34 1.1输⼊输出样例2: Enter lower:40 Enter upper:30 fahr celsius源程序(有错误的程序)#include <stdio.h>int main(void){int fahr , lower, upper; /* fahr表⽰华⽒度 */double celsius; /* celsius表⽰摄⽒度 */printf("Enter lower:");scanf("%d",&lower);printf("Enter upper:");scanf("%d",&upper);printf("fahr celsius\n"); /* 显⽰表头 *//* 温度转换 */for (fahr = lower , fahr <= upper, fahr ++) ;celsius = 5 /9 * (fahr - 32.0);printf("%3.0f %6.1f\n", fahr, celsius);return 0;}对源程序进⾏编译,结果如下:错误信息1:错误原因:for语句后⾯加了分号。
改正⽅法:将分号去掉。
错误信息2:错误原因:for语句下没有加“{}“改正⽅法:在for语句下加上“{}”错误信息3:错误原因:发现for语句内语句⽤逗号隔开了。
C++输入与输出—cout和cin的用法

输入和输出并不是C++语言中的正式组成成分。C和C++本身都没有为输入和输出提供专门的语句结构。输入输出不是由C++本身定义的,而是在编译系统提供的I/O库中定义的。C++的输出和输入是用“流”(stream)的方式实现的。图3.2和图3.3表示C++通过流进行输入输出的过程。有关流对象cin、cout和流运算符的定义等信息是存放在C++的输入输出流库中的,因此如果在程序中使用cin、cout和流运算符,就必须使用预处理命令把头文件stream包含到本文件中:#include <iostream>尽管cin和cout不是C++本身提供的语句,但是在不致混淆的情况下,为了叙述方便,常常把由cin和流提取运算符“>>”实现输入的语句称为输入语句或cin 语句,把由cout和流插入运算符“<<”实现输出的语句称为输出语句或cout语句。根据C++的语法,凡是能实现某种操作而且最后以分号结束的都是语句。一、输入流与输出流的基本操作cout语句的一般格式为:cout<<表达式1<<表达式2<<……<<表达式n;cin语句的一般格式为:cin>>变量1>>变量2>>……>>变量n;在定义流对象时,系统会在内存中开辟一段缓冲区,用来暂存输入输出流的数据。在执行cout语句时,先把插入的数据顺序存放在输出缓冲区中,直到输出缓冲区满或遇到cout语句中的endl(或'\n',ends,flush)为止,此时将缓冲区中已有的数据一起输出,并清空缓冲区。输出流中的数据在系统默认的设备(一般为显示器)输出。一个cout语句可以分写成若干行。如cout<<"This is a simple C++ program."<<endl;可以写成cout<<"This is " //注意行末尾无分号<<"a C++ "<<"program."<<endl; //语句最后有分号也可写成多个cout语句,即cout<<"This is "; //语句末尾有分号cout <<"a C++ ";cout <<"program.";cout<<endl;以上3种情况的输出均为This is a simple C++ program.注意不能用一个插入运算符“<<”插入多个输出项,如:cout<<a,b,c; //错误,不能一次插入多项cout<<a+b+c; //正确,这是一个表达式,作为一项在用cout输出时,用户不必通知计算机按何种类型输出,系统会自动判别输出数据的类型,使输出的数据按相应的类型输出。如已定义a为int型,b为float型,c 为char型,则cout<<a<<' '<<b<<' '<<c<<endl;会以下面的形式输出:4 345.789 a与cout类似,一个cin语句可以分写成若干行。如cin>>a>>b>>c>>d;可以写成cin>>a //注意行末尾无分号>>b //这样写可能看起来清晰些>>c>>d;也可以写成cin>>a;cin>>b;cin>>c;cin>>d;以上3种情况均可以从键盘输入: 1 2 3 4 ↙也可以分多行输入数据:1↙2 3↙4↙在用cin输入时,系统也会根据变量的类型从输入流中提取相应长度的字节。如有char c1,c2;int a;float b;cin>>c1>>c2>>a>>b;如果输入1234 56.78↙注意: 34后面应该有空格以便和56.78分隔开。也可以按下面格式输入:1 2 34 56.78↙ (在1和2之间有空格)不能用cin语句把空格字符和回车换行符作为字符输入给字符变量,它们将被跳过。如果想将空格字符或回车换行符(或任何其他键盘上的字符)输入给字符变量,可以用3.4.3节介绍的getchar函数。在组织输入流数据时,要仔细分析cin语句中变量的类型,按照相应的格式输入,否则容易出错。二、在输入流与输出流中使用控制符上面介绍的是使用cout和cin时的默认格式。但有时人们在输入输出时有一些特殊的要求,如在输出实数时规定字段宽度,只保留两位小数,数据向左或向右对齐等。C++提供了在输入输出流中使用的控制符(有的书中称为操纵符)。需要注意的是: 如果使用了控制符,在程序单位的开头除了要加iostream头文件外,还要加iomanip头文件。举例: 输出双精度数。double a=123.456789012345;对a赋初值(1) cout<<a;输出: 123.456(2) cout<<setprecision(9)<<a;输出: 123.456789(3) cout<<setprecision(6);恢复默认格式(精度为6)(4) cout<< setiosflags(ios∷fixed);输出: 123.456789(5) cout<<setiosflags(ios∷fixed)<<setprecision(8)<<a;输出: 123.45678901(6) cout<<setiosflags(ios∷scientific)<<a;输出: 1.234568e+02(7) cout<<setiosflags(ios∷scientific)<<setprecision(4)<<a; 输出: 1.2346e02下面是整数输出的例子:int b=123456;对b赋初值(1) cout<<b;输出: 123456(2) cout<<hex<<b; 输出: 1e240(3) cout<<setiosflags(ios∷u ppercase)<<b;输出: 1E240(4) cout<<setw(10)<<b<<','<<b; 输出: 123456,123456(5) cout<<setfill('*')<<setw(10)<<b;输出: **** 123456(6) cout<<setiosflags(ios∷showpos)<<b;输出: +123456如果在多个cout语句中使用相同的setw(n),并使用setiosflags(ios∷right),可以实现各行数据右对齐,如果指定相同的精度,可以实现上下小数点对齐。例3.1 各行小数点对齐。#include <iostream>#include <iomanip>using namespace std;int main( ){double a=123.456,b=3.14159,c=-3214.67;cout<<setiosflags(ios∷fixed)<<setiosflags(ios∷right)<<setprecision( 2);cout<<setw(10)<<a<<endl;cout<<setw(10)<<b<<endl;cout<<setw(10)<<c<<endl;return 0;}输出如下:123.46 (字段宽度为10,右对齐,取两位小数)3.14-3214.67先统一设置定点形式输出、取两位小数、右对齐。这些设置对其后的输出均有效(除非重新设置),而setw只对其后一个输出项有效,因此必须在输出a,b,c之前都要写setw(10)。。
c语言输入和输出

每一个标准库都有一个相应的头文件,该头文件包含了该库中所 有函数的函数原型及其相关信息。在调用这些库函数时,要用预处理 命令“#include”将有关的“头文件”包括到用户源程序中。标准输入输出库 函数对应的头文件是“stdio.h”。stdio是standard input & output的
3.1 概述
通过终端输入(如键盘、鼠标等),也称为标准输入(standard input),直接向终端输出(如显示器、打印机等),也称为标准输出 (standard output)。
C语言本身没有提供输入输出语句,C语言中的所有I/O操作都是通过函 数调用来实现,而这些并非C语言一部分的输入输出函数均以目标级程序
int main()
{Байду номын сангаас
int *ptr;
/* 定义一个指针 */
scanf(“%[^\n]”, ptr);
printf(“ptr=%s\n”,ptr);
}
设输入为:
How are you!↙
程序输出为:
How are you!
C语言程序设计---第3章
17
第17页,共21页。
3.4.4 scanf()函数应用中两个最常见的问题
printf(“%s\n”,ptr);
}
设输入为:
How are you,John!↙ 程序输出为:
How are you
注:这是由于逗号作为不可接受字符,而作为
字符串的定界符. C语言程序设计---第3章
16
第16页,共21页。
/* 本程序可接收任意字符串的输入 */
#include<stdio.h>
C语言格式输入输出总结.plg

scanf(“%d”,&n); c = getchar();
假设输入 67/ (假设“/”代表回车),则第一个scanf读入一个整数67后,当 前输入流的位置是67之后,即指向回车符,所以第二个getchar()读入的就 是一个回车符了,即 c = ‘\n’。 同样,gets()也是从当前位置读入一行字符串。 比如: scanf(“%d”,&n); gets(str);
第6页
C语言格式输入输出总结.plg 此时读入字符数组中的字符串就是“\n” 了 所以通常在用scanf读入一个非字符串的类型之后,如果要读入字符,或字 符数组,都用一个额外的getchar()把回车符读掉,若后面跟的不止一个回 车符,可能还有多余的空格的话,就用gets()读掉。
和以上不同的是,scanf(“%s”) 读入的时候是会忽略掉起始时的空格, 回车和制表符的。并且以空格,回车和制表符作为字符串结束的标志。
经常会有这样的题,输入第一行是一个整数,接下来每行的第一个是
一个字符,用来表示某种操作,后面再跟一些数据,比如: 4 A 100 2 B 23 A 23 89 B 34 像这种输入就需要小心,读入字符时不要读成回车符。
为了防止意外,我一般是这样处理这类输入的: char model[2]; Scanf(“%d”,&n); for(…,…,…){
******************************** *******
输出宽度 用十进制整数来表示输出的最少位数。 注意若实际位数多于定义的宽
度,则按实际位数输出, 若实际位数少于定义的宽度则补以空格或0。
输出精度 精度格式符以“.”开头,后跟十进制整数。意义是:如果输出数字,则表
C程序设计语言(完美中文版)

C程序设计语言(完美中文版)C语言是一种广泛使用的编程语言,以其高效性和灵活性而著称。
它是一种结构化编程语言,被广泛应用于系统编程、嵌入式系统、操作系统、数据库、网络编程等领域。
C语言的特点是简洁、高效、灵活,并且与硬件紧密相关,使得程序员可以更深入地理解计算机的工作原理。
在C语言中,所有的程序都是由函数组成的。
函数是C语言中的基本构建块,可以用来执行特定的任务。
C语言提供了丰富的库函数,可以用来实现各种功能,例如输入输出、字符串处理、数学运算等。
C语言还支持用户自定义函数,使得程序员可以创建自己的函数来满足特定的需求。
C语言中的数据类型包括基本数据类型和复合数据类型。
基本数据类型包括整型、浮点型、字符型等,用于表示基本的数据。
复合数据类型包括数组、结构体、联合体等,用于表示复杂的数据结构。
C语言还支持指针,可以用来实现内存管理和动态数据结构。
C语言中的控制结构包括条件语句、循环语句和跳转语句。
条件语句用于根据条件的真假来执行不同的代码块。
循环语句用于重复执行一段代码,直到满足特定的条件。
跳转语句用于在程序中实现跳转,例如跳转到循环的开始或结束。
C语言还提供了丰富的输入输出函数,可以用来从用户那里获取输入,并将输出结果显示给用户。
这些函数包括printf、scanf、puts、gets等。
通过这些函数,程序员可以与用户进行交互,获取用户输入的数据,并将处理结果展示给用户。
C语言是一种功能强大、灵活多变的编程语言。
它提供了丰富的数据类型、控制结构和输入输出函数,使得程序员可以高效地实现各种功能。
学习C语言可以帮助程序员更好地理解计算机的工作原理,为后续学习其他编程语言打下坚实的基础。
C程序设计语言(完美中文版)2. 模块化编程:C语言支持模块化编程,可以将程序划分为多个模块,每个模块包含一组相关的函数和数据。
这种模块化编程方式有助于提高代码的可读性、可维护性和可重用性。
程序员可以将常用的功能封装成模块,并在需要时引入这些模块,从而简化程序的开发过程。
拓展知识9-1 标准输入输出设备文件和流
拓展知识9-1 标准I/O设备文件和流C程序中经常有大量对文件的输入输出操作,它构成了程序的重要部分,因而C语言提供了很多输入输出的函数,用于两种类型文件输入输出系统:即由ANSI标准定义的缓冲文件系统(也称标准文件(流)输入输出(I/O)系统);另一类是ANSI标准中没有定义的非缓冲文件系统(也称非标准文件(流)输入输出(I/O)系统)。
我们已经熟悉了通过键盘和显示器进行输入输出的一些函数,如scanf,printf 等等,这些通过控制台(键盘、显示器等)进行I/O的操作,可以看作标准文件输入输出系统的一些特例。
任何C程序执行时,系统都定义了5个标准设备文件供使用。
系统自动打开的5个标准设备文件为:键盘(标准输入)stdin 0显示器(标准输出)stdout 1显示器(标准错误)stderr 2串行口(标准辅助)stdoux 3打印机(标准打印)stdprn 4在C中可将数据的输入输出看作是数据的流入和流出,这样不管是普通(磁盘)文件或者是物理设备(打印机、显示器、键盘等),都可看作一种流的源和目的,视他们为同一种东西,而不管其具体的物理结构,即对他们的操作,就是数据的流入和流出。
这种把数据的输入输出操作,抽象化为一种流,而不管它的具体结构的方法很有利于编程,而涉及流的输入输出操作函数可用于各种对象,与其具体的实体无关,即具有通用性。
在C语言中流可分为两大类,即文本流(text stream)和二进制流(binary stream)。
所谓文本流是指在流中流动的数据是以字符形式出现。
在文本流中,'\n'被换成回车CR和换行LF的代码0DH和0AH。
而当输出时,则0DH和0AH被换成'\n'。
二进制流是指流动的是二进制数字序列,若流中有字符,则用一个字节的二进制ASCII码表示,若是数字,则用一个字节的二进制数表示。
在流入流出时,对\n符号不进行变换。
【示例】2001这个数,在文本流中用其ASCII码表示为:50 48 48 49共占4字节。
C语言02 数据类型及输入输出
– 注意在不同系统中长度可能不同,可用sizeof查看(举例),int 类型在VC中是4B, 而在TurboC中为2B
• • • • •
声明一个变量,类型名 后跟变量名
– 如 char a;
声明多个变量时,变量之间用逗号隔开
– 如:int a,b,c;
用signed修饰符说明有符号数,signed可以省略
适用
输出 输入和输出 输入和输出 输入和输出 输出 输出 输入 输入和输出 输入和输出 输入和输出
ቤተ መጻሕፍቲ ባይዱ
误差来源: 尾数是有限的,有些十进制数变成二进制存储时,长度 超过容纳范围丢失产生误差 在运算中,对阶移位而使部分尾数移出容纳范围而产生 误差
整型常量的表示
• • • • 十进制表示和数学中相同,如35,-36 八进制数用零做前缀,如023,-012, -079(错) 十六进制数用零加x做前缀表示,如0x2a,-0x1f 用L做后缀表示长整数常量,U后缀表示无符号数常量,如 123456789ul • 示例: – #include "stdio.h" – void main(){ – int a,b,c; – a=23;b=023;c=0x23; – printf("%d,%d,%d\n",a,b,c); – }
• 字符串常量用双引号做定界符表示, 如:”a”, ”sdhjfdshjfhjsd”,“”(空串),“ ”(由一个空 格组成的字符串)
实数输出举例
• • • • • • • #include "stdio.h" void main(){ float a=34.5678; printf("%f,%d\n",a,a); } 输出结果:34.567799,-1610612736 说明前面存储时产生误差,后者格式错误输出 完全错误
大学c语言实验报告-1基本输入输出
实现程序流程
写程序代码
调试验证代码
四、实验原始纪录(源程序、数据结构等)
11.原程序:
12.原程序:
13.原程序:
14.原程序:
五、实验结果及分析(计算过程与结果、数据曲线、图表等)
11题输出结果:
12题输出结果:
13题输出结果:1ຫໍສະໝຸດ 题输出结果:六、实验总结与思考
1.本次试验初步了解了输入与输出函数在实际程序中的运行及VC++的使用。
2.对逻辑运算了解的更加深刻。
教师评语:
二实验主要仪器和设备计算机三实验方法与步骤需求分析算法设计思路流程图等分析题目实现程序流程写程序代码调试验证代码四实验原始纪录源程序数据结构等11
实验报告
课程名称程序设计基础——c语言
实验项目名称实验1基本输入输出
实验学生班级
实验学生姓名
学 号
同组学生姓名\
实验时间
实验地点
实验成绩评定
指导教师签字年月日
一、实验目的和要求
1.理解该部分的概念。包括:
掌握该部分的用法,熟练编写程序应用
2.上机调试之前必须携带已经编写完毕的程序源代码,实验过程中主要是进行调试。
3.上机时间不足以完成实验项目的同学利用课外时间做完所有项目。
4.根据所选实验内容完成实验报告。
二、实验主要仪器和设备
计算机
三、实验方法与步骤(需求分析、算法设计思路、流程图等)
中职教育-《89C51单片机实用教程》课件:第9章 89C51单片机串行输入输出(1).ppt
2. 异步通信 通信双方无统一的时钟控制,代码或一字节数据。 异步传送数据帧的格式:由四个部分组成:
起始位(0)+数据位5-8位+奇偶校验位( 可省略) +停止位(1)
9.1.3 波特率(Baud rate)
波特率是串行数据的传送速率, 表示每秒传送二进制 代码的位数,单位是bps(位/秒)又称波特。
采用 MAX232的 89C51与PC机的串行通信接口电路 (MAXIM公司的MAX232芯片,是RS-232C和TTL电
平转换电路。它包含两路接收器和驱动器。)
2. RS-449、RS-422A,RS-423A和RS-485串行标准
为提高通信的数据传输率,增加距离,改善电气性能, 美国电子工业协会E IA制定了新的异步串行通信标准.
RS-449标准采用了平衡信号差分电路传输高速的信 号,传输距离和速率得到提高。噪声低,抗干扰能力 强,而且可以多台设备与RS-449通信电缆并联。
RS-422A标准是 “平衡电压数字接口电路的电气特 性”标准,使用一对双绞线传送信号. 每个通道要用二 相信号线, RS-422A传输信号距离长、速度快,数据传 输率最大为 10 Mb/s, 在此速率下,电缆允许长度为 120 m;如采用较低速率,如 90000 b/s时,最大距离达 1200m.RS-422标准中规定电路中只允许有一个发送器, 可有多个接收器。因此,通常采用点对点通信方式.
9.1.2 异步通信与同步通信
1. 同步通信 在同步通信中,将数据组成连续的数据块(帧)。 数据以块 (帧) 为单位。传送开始用同步字符指示,
由时钟实现同步。连续按顺序传送数据, 直到结束。 数据帧格式:
同步字符 (1-2个)、数据字符 、校验字符(1-2个)。 同步通信方式传送速度和效率高, 但硬件电路复杂。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Computer Application University
--
Fjnusoft
(5)控制正、负符号的显示
#include<iostream.h> #include<iomanip.h> void main() { cout<<10<<” ”<<-20<<endl; cout<<setiosflags(ios::showpos)<<30<<” ” <<-40<<endl; }
输入输出流
福建师范大学信息技术学院 陈雪萍
输入/输出(I/O)
C++程序没有输入/输出语句,它的输入/输出功能由函数 (scanf、printf)或流控制来实现。输入/输出流(I/0流)是输 入或输出的一系列字节。C++定义了运算符“<<”和“>>”的 iostream类。在这里只介绍如何利用C++的标准输入/输出流实现 数据的输入/输出功能。
Computer Application University
--
Fjnusoft
表3-1 常用的I/O流控制符
控制符 dec hex oct
含义 数值数据采用十进制表示 数值数据采用十六进制表示 数值数据采用八进制表示
setw(n)
setprecision(n) setioflags(ios::uppercase) setioflags(ios::lowercase) setiosflags(ios::left) setiosflags(ios::right) setiosflags(ios::showpos)
Computer Application University
--
Fjnusoft
在C++程序中,cin与cout允许将任何基本数据类型的名字或 值传给流。而且书写格式较灵活,可以在同一行中串连书写,也可以 分写在几行,提高可读性。 例如:cout<<”hello”; cout<<3; cout<<endl; 等价于: cout<<”hello”<<3<<endl; 也等价于: cout<<”hello” //注意:行末无分号 <<3 //行末无分号 <<endl;
设置域宽为n个字符
设置浮点数的小数位数(包括小数点) 十六进制数大写输出 十Байду номын сангаас进制数小写输出 左对齐 右对齐 设置正、负符号的显示
setfill(c)
endl
设置填充字符为c
Computer Application 插入换行符,并刷新流 University -Fjnusoft
(1)控制不同进制的输出(十进制、八进制、十六进制)
此程序的运行结果为:
**12
Computer Application University
--
Fjnusoft
最后看一个应用程序:
判断某一年是否是闰年。
#include "iostream.h" void main() { int year,leap; cout<<"please input a year:"<<endl; cin>>year; if((year%4==0&&year%100!=0)||(year%400==0)) leap=1; else leap=0; if(leap) cout<<year<<" is a leap year."<<endl; else cout<<year<<" is not a leap year."<<endl; }
}
此程序的运行结果为:
1234567890 123.45 123.45 123.45 123.45
Computer Application University -Fjnusoft
(3)控制输出精度
#include<iostream.h> #include<iomanip.h> void main() { double a=1.234567; cout<<setprecision(3)<<a<<endl; }
--
Fjnusoft
如 果 希 望 显 示 的 数 字 是 1.23 , 即 保 留 两 位 小 数 , 此 时 可 用 setprecision(n)控制符加以控制,此时显示3位有效位。当小数位数 截短显示时,进行四舍五入处理。 C++默认的输出流数值的有效位是6。
Computer Application University
Computer Application University
--
Fjnusoft
2.
输出 当程序需要在屏幕上显示输出时,可以使用插入操作符“<<” 向输出流cout中插入字符和数字,并把它在屏幕上显示输出。例如: #include<iostream.h> void main() { cout<<”Hello.\n”; } 与输入一样,这里的插入操作符“<<”与位移运算符“<<”是 同样的符号,但这种符号在不同的地方其含义是不一样的。
#include<iostream.h> void main() { int a=1001; cout<<”默认下:”<<a<<endl; cout<<”十进制:”<<dec<<a<<endl; cout<<”八进制:”<<oct<<a<<endl; cout<<”十六进制:”<<hex<<a<<endl; }
此程序的运行结果为:
10 +30 -20 -40
Computer Application University
--
Fjnusoft
(6)控制空位填充
#include<iostream.h> #include<iomanip.h> void main() { cout<<setfill(‘*’)<<setw(4)<<12<<endl; }
Computer Application University
--
Fjnusoft
又例如: int a; double b; cin>>a>>b; //cin可分辨不同的抽取 //变量类型
Computer Application University
--
Fjnusoft
常用的控制符 用控制符(manipulators)可以对I/O流的格式进行控制。 C++在头文件iomanip.h中定义了控制符对象,可以直接将这些控 制符嵌入到I/O语句中进行格式控制。在使用这些控制符时,要在程 序的开头包含头文件iomanip.h。 表3-1列出了常用的I/O流控制符。
Computer Application University
--
Fjnusoft
1.
输入 当程序需要执行键盘输入时,可以使用抽取操作符“>>” 从输入流cin中抽取键盘输入的字符和数字,并把它赋给指定的 变量。例如: #include<iostream.h> void main() { int a; cin>>a; } 注意:这里的抽取操作符“>>”与位移运算符“>>”是同 样的符号,但这种符号在不同的地方其含义是不一样的。
Computer Application University -Fjnusoft
此程序的运行结果为:
please input a year: 2000 2000 is a leap year. please input a year: 1995 1995 is not a leap year.
Computer Application University
此程序的运行结果为:
默认下:1001 十进制:1001 八进制:1751 十六进制:3e9
Computer Application University
--
Fjnusoft
(2)控制输出宽度
#include<iostream.h> #include<iomanip.h> void main() { int a=1234567890; double b=123.45; cout<<setw(10)<<a<<endl; cout<<setw(10)<<b<<endl; cout<<setw(8)<<b<<endl; cout<<setw(6)<<b<<endl; cout<<setw(4)<<b<<endl;
--
Fjnusoft
(4)控制左右对齐 默认情况下,C++程序的I/O流以左对齐方式显示输出的内容。 使用控制符setiosflags(ios::left)和setiosflags (ios::right),可以控制输出内容的左、右对齐方式。 setiosflags(ios::left)和setiosflags(ios::right)控制符 在头文件iomanip.h中定义。