文档库 最新最全的文档下载
当前位置:文档库 › C 实验流类库与输入输出

C 实验流类库与输入输出

C   实验流类库与输入输出
C   实验流类库与输入输出

Microsoft Word - 输入输出流类库编程练习题 - 首都

注意:每道题的难度等级不同,*越多,难度等级越高。可以根据自己的能力,选做恰当难度的题。 8.1改写第五章编程练习5.4题的程序,使该程序在程序结束之前,先判断字典内容是否发 生了变化(单词的添加、修改、删除)。如果字典内容已经被修改,则提示是否保存修改后的新字典;若选择保存,则将字典的全部内容写入一个纯文本文件,该文件可以命名为dictionary.txt。每次程序重新运行时,先尝试打开dictionary.txt。如果该文件存在,则打开文件,并从该文本文件中输入产生一个字典。 难度等级:** 8.2编写一个用于统计英文纯文本文件的各项信息:文件内容的总字符数(包括标点符号), 单词个数,文本行数。 要求: 1.提示用户输入一个扩展名为.txt的纯文本文件名,如果指定文件存在,则打开该文 件,否则显示错误提示信息。 2.统计文件内容的上述信息,并显示所统计的信息。信息的显示格式自行确定,例如 可以按如下格式显示: 文件名:Information.txt 字符数:4854 单词数:853 文本行数:56 3.每个文件的信息显示后,提示用户是否继续统计其他文本文件,如果继续,则重复 1和2中的操作。 提示: 1.判断文本行的依据可以是每行的结尾应为‘\n’。 难度等级:*

8.3编写一个程序用于某大学的某信息专业学生的基础课成绩的录入、显示和相应数据文件 的读写。 要求: 1.成绩的按如下顺序录入: ⑴在学生成绩录入之前,先通过输入确定基础课程的门数和课程名称。例如: 基础课程1:高等数学 基础课程2:大学物理 基础课程3:大学英语 基础课程4:C语言程序设计 基础课程5:数据结构 … ⑵每个学生的成绩录入的内容包括学生的姓名、学号、性别和各门课程的成绩。成 绩按照A,B,C,D四个等级划分。录入格式可以参照如下: 姓名:李建国 学号:200410001 性别:男 高等数学:C 大学物理:B 大学英语:C C语言程序设计:B 数据结构:A … 2.保存学生成绩数据的文件的种类和结构、内容如下 ⑴课程信息索引文件courses.inx用于保存所有课程的索引信息,每门课程的索 引信息由课程索引序号和课程名组成。例如: 课程序号课程名 1高等数学 2大学物理 3大学英语 4C语言程序设计 5数据结构 … 注意,课程门数不得少于5门。 ⑵学生信息文件student.inx用于保存所有学生的索引信息,每个学生的索引信息 由学号和学生基本信息(姓名、性别)组成。例如: 学生学号学生基本信息 200410001李建国,男 … ⑶分课程成绩数据索引文件XXX.inx用于保存一门课程的所有学生成绩的索引信 息,每个学生的成绩索引信息由学号和成绩等级组成。每门课程有一个成绩数据 索引文件,文件名XXX由课程名确定。例如: 文件名:“高等数学.inx” 学生学号成绩等级 200410001C

数据类型与输入输出

学生实验报告 学号 : 日期 : 2014-06-22 系别计算机科 学与技术 专业 计算机科学与 技术(师) 班级姓名 课程名称C语言程序设计 课程 类型 专业课学时数2 实验 名称 数据类型与输入\输出函数 实验目的 进一步熟悉VC++6.0集成开发环境的使用方法; 掌握C语言三种基本数据类型的特点; 掌握基本输入/输出函数的功能和使用要求; 积累VC++6.0进行程序调试经验。 实验要求: 熟悉如何定义一个整型、字符型、实型: 掌握不同的类型数据之间赋值的规律; 掌握scanf,printf函数的使用方法; 实验内容 。1.新建工程EXP2_1并编辑下列程序,编译连接运行。/*C source program example*/ #include"stdio.h" main() { int a,b,sum; printf("Hello, C! "); a=123;b=456; sum=a+b; printf("sum is %d\n",sum); }

运行结果: 2 .练习程序的简单调试 去掉程序EXP2_1.c中语句 sum=a+b; 的分号,观察编译错误并记录和分析说明。 把EXP2_1.c程序中的main改为mian,观察程序出错情况并记录分析。将程序EXP2_1.c中语句 printf("sum is %d\n",sum); 中" 换为”,观察编译错误并记录和分析说明。

分析结果:不管是将“sum=a+b;”改为“sum=a+b”,还是将“main”函数改为“mian”,都出现错误,因而得不到正确的运行结果。 3.新建工程EXP2_2,按下列要求在该工程工作空间编写一个文件名为:EXP2_2.c 的程序。 定义3个int变量和一个实数型变量average,计算并输出3个整数的平均值average,即average=(x+y+z)/3,其中x,y,z的值通过变量初始化方式赋值x=5,y=4,z=2,输出average的值。 实验要求: 1)调试运行程序并观察运行结果。

第2章 基本数据类型与输入输出

第2章基本数据类型与输入输出 2·1字符集与关键字 组成C语言的字符(字符集)包括: 26个小写字母a~z 26个大写字母A~Z 10个数字0~9 其它可以显示的字符+-*/=,._:;?\”’~|!#%&()[]{}^<> 空白字符空格、制表、换行、回车等等 在C源程序中,编译器识别的基本元素是“语言符号“,包括: 关键字 标识符 常量(文字常量) 运算符 标点字符 关键字是C编译器中具有特定意义的单词。 auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while 2·2基本数据类型 整形 字符型单精度型 实型(浮点型) 枚举型双精度型 数组类型 数据类型构造类型结构体类型 公用体型 指针类型

当声明一个对象(变量或常量)时,必须说明是什么数据类型(简称“类型“); 对象类型的描述确定了其内存所占空间大小,也确定了其表示范围; 对象类型的描述确定了其所能进行的操作; 在不同的计算机上,每个对象类型所占用的内存空间的长度不一定相同。 基本数据类型的分类 整数类型 符号表现形式数据长度数值范围 带符号int 32 -2147483648~2147483647 short 16 -32768~32767 long 32 -2147483648~2147483647 无符号unsigned int 32 0~4294967295 unsigned short 16 0~65535 unsigned long 32 0~4294967295 实数类型 符号表现形式数据长度数值范围 带符号float 32 7位精度 double 64 15~16位精度 字符类型 符号表现形式数据长度数值范围 带符号char 8 -128~127 无符号unsigned char 8 0_255 2·3变量 在程序运行过程中,其值可以改变的量称为变量。一个变量有一个名字,在内存中占据一定的存储空间。

实验十一 流类库与输入/输出

实验十一流类库与输入/输出(2学时) 一、实验目的 1.熟悉流类库中常用的类及其成员函数的用法。 2.学习标准输入输出及格式控制。 3.学习对文件的应用方法(二进制文件、文本文件)。 二、实验任务 1.观察以下程序的输出,注意对输出格式的控制方法; //labll—1.cpp #include Using namespace std; #define D(a)<<#a<

第9章流类库与输入输出

第9章流类库与输入输出 9.1 本章提要 (1)C++语言提供一个用于输入/输出(I/O)操作的类族,这些操作是以对数据敏感 的方式实现的。类族提供了对预定义类型进行输入/输出操作的能力,程序员也 可以利用这个类族进行自定义类型的输入/输出操作。 (2)标准输出操作方法 ①将插入符作用在流对象cout上,可输出显示整型数、浮点数,字符和字符串。 ②使用成员函数put( )可输出一个字符 ③使用成员函数write( )可输出一个字符串 (3)标准输入操作方法 ①将提取符作用在流对象cin上,可输入整型数、浮点数、字符和字符串。 ②使用成员函数get( )可输入一个字符,使用成员函数getline( )可输入—行字符。 ③使用成员函数read( )可读取一个字符串。 (4)格式化输入输出的两种方式 ①使用标志字和成员函数 ②使用操作子 (5)磁盘文件的输入和输出,包括: ①磁盘文件的打开和关闭操作 ②文本文件的读写操作 ③二进制文件的读写操作 ④随机访问数据文件 9.2 程序举例 下面是一个展示用不同方法(使用重载运算符和成员函数)对标准的输入输出流对象(cin和cout)进行操作的例子。 例9-1 用不同方法操作流对象 //ch9_1.cpp 标准设备的输入输出 #include void main() { char buffer1[80],buffer2[80],buffer3[80];

cout<<"Please enter a sentence:"<>buffer1; cout< void main() { //设置整数流的格式和基数 int x=123; cout<<"dec: "<

C语言数据的输入与输出

C语言数据的输入与输出 一.Printf函数 函数原型在头文件stido.h中(使用时可以不包括) printf函数的返回值等于成功输入得数据的个数 1.printf函数得一般调用形式 printf(格式控制字符串,输出项列表) 格式控制字符串包括: (1)格式指示符 格式:%[标志][宽度][.精度][ [ h|l ] <类型>] (2)转义字符 如:'\n' , '\0' (3)普通字符 如:printf("max=%d,min=%d\n", a, b); “max=”和“,min=”是普通字符;“%d”是格式指示符;“\n”是转义字符; a和b是输出类表中的输出项(可以是常量、变量、或表达式)。 2.print函数中常用得格式控制说明 (1)数据类型控制字符 (2)数据类型修饰符 数据类型修饰符在%和数据类型控制符之间 如:长整型 "%ld" ,短整型 "%hd" (3)输出数据所占得宽度与精度

1)在%与格式字符之间插入一个整数来指示输出宽度。 若指定得输出宽度不够,系统自动以数据实际值得宽度作为输出宽度;如果指定的输出宽度多于数据实际所需宽度,数据右对齐,左边补以空格。 如:printf("%5d\n",42); \*输出结果: 42*\ 2)float或double类型得实型数可以用“整数1.整数2”的形式在指定总宽度的同时指定小数位得宽度。“整数1”指定输出数据得总宽度(小数点也要计算在内),“整数2”称之为精度,即小数位的位数。 注意:输出数据得实际精度并补取决与格式控制中的域宽和小数得位宽,而是取决于数据在计算机内的存储精度。 (4)标志控制字符 1)输出数据左对齐的标志字符“-”,在指定输出宽度之前。 如:printf("%-5d##\n",24); \*输出结果:24 ##*\ 2)输出数字总是带正负号得标志字符“+”,在%和格式字符之间(或指定得输出宽度前) 如:printf("%+d,%+d\n",100,-200); \*输出结果:+100,-200*\ 3)在输出数据前加前导0,可以在指定输出宽度得同时,在数据前面得多于空格处填以数字0。 如:printf("%05d\n",59); \*输出结果:00059*\ 二.Scanf函数 函数原型在头文件stdio.h中(使用时可以不包括) Scanf函数的返回值等于成功输入得数据的个数。 1.scanf函数得一般调用形式 scanf(格式控制字符串,地址列表) 格式控制字符串:%[*][输入数据宽度][ h|l ]<类型> 地址列表是各变量得地址,如:&a,&b

C语言数据类型及输入输出函数

实验二C语言数据类型及输入输出函数 一、实验目的 1、熟悉C语言编译环境Turbo C 2.0; 2、熟悉C语言的基本数据类型; 3、熟悉C语言的基本输入及输出函数; 4、使用TC编写简单的程序。 二、预习并思考 1.C语言所包括的基本数据类型 1)整型 整型数据可以有哪几种表示形式?(十进制,八进制,十六进制) 基本整型,短整型,长整型,字符型 两种表现形式 1在定义时使用: 比如十进制表示: int a=12; 八进制表示: int a=012; 十六进制表示:int a=0x12; 2 在输出时使用: Printf(“%d”,a);/*十进制数*/ Printf(“%o”,a);/*八进制数*/

Printf(“%h”,a);/*十六进制数*/ 这几种类型的数据应该如何定义?怎么区分? 整型 int “%d” 长整型 long int “ %ld” 字符型 char “%c” 整型数据的范围是多少?超出以后会如何? 整型数据范围:-32768~32767 超出后,依次从最小开始计数 比如32768 显示出来是-32768 2)实型

实型数据分为单精度float和双精度double两种,它们存储时分别占据多大的内存空间? Float -2^32~2^31-1,占四个字节 Double -2^64~2^63-1,占八个字节 3)字符型 一个字符的数据范围有多大? 0~256 如何理解字符数据和整型数据之间的关系?字符和字符串之间的关系是什么,存储时有何区别? 字符人们使用的记号,抽象意义上的一个符号。 '1', '中', 'a', '$', '¥', …… 字符串在内存中,如果“字符”是以 ANSI 编码形式存在的,一个字符可能使用一个字节或多个字节来表

第12章流类库和输入输出概论

第12章流类库和输入输出 【内容提要】 流的概念及流类库 输入输出的格式控制 输入与输出运算符的重载 文件操作 【重点与难点】 12.1 流的概念及流类库 12.1.1 流的概念 C++中的流是指数据从一个对象传递到另一个对象的操作。从流中读取数据称为提取操作,向流内添加数据称为插入操作。流在使用前要建立,使用后要删除。如果数据的传递是在设备之间进行,这种流就称为I/O流。C++专门内置了一些供用户使用的类,在这些类中封装了可以实现输入输出操作的函数,这些类统称为I/O流类。 C++流预定义了4个标准流类对象,它们可以直接用来输入输出。这些标准流类对象都包含在头文件iostream.h中。 istream cin; //与标准输入设备相关联的标准输入流。 ostream cout; //与标准输出设备相关联的标准输出流。 ostream cerr; //与标准错误输出设备相关联的非缓冲方式的标准输出流。ostream clog; //与标准错误输出设备相关联的缓冲方式的标准输出流。12.1.2 流类库 C++的流类库有两个平行的基类streambuf和ios,其它的流类都是从这两个基类直接或间接派生的。使用这些流类库时,必须包含相应的头文件。 ios类及其派生类为用户提供了使用流类的接口。以下给出ios类及其派生类的层次结构图。 ios istream ifstream istream_withassign iostream istrstream fstream ostream strstream ofstream sdiostream ostream_withassign ostrstream 图12.1 ios类的层次关系 12.2 输入输出的格式控制 C++仍可使用C中的printf()和scanf()进行格式化控制,同时又提供了两种格式化控制的方法,一是使用ios类中的有关格式控制的成员函数,二是使用执行格式化输入/输出的格式控制符。 12.2.1 用ios类的成员函数进行格式控制 使用这种方式进行格式控制主要是通过设置及清除格式状态标志、设置域宽、设置填充字符和设置输出精度的操作来完成的。 设置及清除格式状态标志 格式状态标志说明 ios::skipws跳过输入中的空白,用于输入 ios::left左对齐输出,用于输出

实验六C++的流类库与输入输出

实验 6 C++的流类库与输入输出 一、实验目的 1. 掌握C++格式化的输入输出方法。 2. 掌握重载运算符“<<”和“>>”的方法。 3. 掌握磁盘文件的输入输出方法。 二、实验准备及要求 在开始实验前,应回顾或复习相关内容。 需要一台主算机,其中安装有Visual C++ 6.0集成开发环境软件。 三、实验内容与结果 1. 下面给出的test7_1_1.cpp程序用于打印九九乘法表,但程序中存在错误。请上机调试,使得此程序运行后,能够输出如下所示的九九乘法表。 * 1 2 3 4 5 6 7 8 9 1 1 2 2 4 3 3 6 9 4 4 8 12 16 5 5 10 15 20 25 6 6 12 18 24 30 36 7 7 14 21 28 35 42 49 8 8 16 24 32 40 48 56 64 9 9 18 27 36 45 54 63 72 81 //test7_1_1.cpp #include #include using namespace std; int main() { int i,j; cout<<"*"<<"\t"; for(i=1;i<=9;i++)

cout< #include using namespace std; int main() { char ch; int i=0; ifstream file; file.open(“xyz.txt”,ios::in); if( !file ) { cout<<”xyz.txt cannot open”<

c++流类库与输入输出习题答案

1.概念填空题 1.1头文件iostream中定义了4个标准流对象cin,cout,cerr,clog。其中标准输入流对象为cin,与键盘连用,用于输入;cout为标准输出流对象,与显示器连用,用于输出。 1.2用标准输入流对象cin与提取操作符>>连用进行输入时,将空格与回车当作分隔符,使用get()成员函数进行输入时可以指定输入分隔符。 1.3每一个输入输出流对象都维护一个流格式状态字,用它表示流对象当前的格式状态并控制流的格式。C++提供了使用格式控制函数与操作子函数来控制流的格式的方法。 1.4 C++根据文件内容的数据格式可分为两类:文本文件和二进制文件。前者存取的最小信息单位为字节,后者记录。 1.5文件输入是指从文件向内存读入数据;文件输出则指从内存向文件输出数据。文件的输入输出首先要打开文件;然后进行读写;最后关闭文件。 1.6文本文件是存储ASCII码字符的文件,文本文件的输入可用cin从输入文件流中提取字符实现。文本文件的输出可用cout将字符插入到输出文件流来实现。程序在处理文本文件时需要(需要/不需要)对数据进行转换。 1.7二进制文件是指直接将计算机内的数据不经转换直接保存在文件中。二进制文件的输入输出分别采用read()、write() 成员函数。这两个成员函数的参数都是2个,分别表示读写缓冲区和字节数。 1.8设定、返回文件读指针位置的函数分别为seekg,tellg;设定、返回文件写指针位置的函数分别为seekp,tellp。 2 简答题 2.1 为什么cin输入时,空格和回车无法读入?这时可改用哪些流成员函数? 2.2 文件的使用有它的固定格式,试做简单介绍。 2.3 在ios类中定义的文件打开方式中,公有枚举类型open_mode的各成员代表什么文件打开方式? 2.4 简述文本文件和二进制文件在存储格式、读写方式等方面的不同,各自的优点和缺点。 2.5 文本文件可以按行也可以按字符进行复制,在使用中为保证能完整复制要注意哪些问题? 2.6 文件的随机访问为什么总是用二进制文件,而不用文本文件? 2.7 怎样使用istream和ostream的成员函数来实现随机访问文件? 3.选择题 3.1要进行文件的输出,除了包含头文件iostream外,还要包含头文件(C )。 A.ifstream B.fstream C.ostream D.cstdio 3.2执行以下程序: char *str; cin>>str; cout<

数据类型、运算符和简单的输入输出实验报告

嘉应学院计算机学院 实验报告 一、实验目的和要求 (1)掌握C语言数据类型,了解字符型数据和整型数据的内在关系。 (2)掌握对各种数值型数据的正确输入方法。 (3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 (4)学会编写和运行简单的应用程序。 (5)进一步熟悉C程序的编辑、编译、连接和运行的过程 二、实验环境和方法 实验方法: (一)综合运用课本所学的知识,用不同的算法实现在不同的程序功能。 (二)结合指导老师的指导,解决程序中的问题,正确解决实际中存在的异常情况,逐步改善功能。 (三)根据实验内容,编译程序。 实验环境:Windows xp Visual C++6.0 三、实验内容及过程描述 实验步骤: ①进入Visual C++ 6.0集成环境。 ②输入自己编好的程序。 ③检查一遍已输入的程序是否有错(包括输入时输错的和编程中的错误),如发现有 错,及时改正。 ④进行编译和连接。如果在编译和连接过程中发现错误,频幕上会出现“报错信息”, 根据提示找到出错位置和原因,加以改正。再进行编译,如此反复直到不出错为止。 ⑤运行程序并分析运行结果是否合理。在运行是要注意当输入不同的数据时所得结果 是否正确,应运行多次,分别检查在不同情况下结果是否正确。 实验内容:编译以下题目的程序并调试运行。 实验① (一)在Visual C++6.0中输入教材第3章第4提给出的程序:

(1)对程序进行编译,将该程序进行连接,运行该程序。 (2)如果将程序第4,5行改为 C1=197; C2=198; 再次进行编译并连接运行。 (3)将程序第三行改为 int c1,c2; 对程序进行编译、连接和运行。 实验② (二)输入第3章第5题的程序。即: 用下面的scanf 函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=`A`,c2=`a`。 运行时分别按以下方式输入数据,观察输出结果,分析原因。 ① a=3,b=7,x=8.5,y=71.82,A,a ↙ ② a=3 b=7 x=8.5 y=71.82 A a ↙ ③ a=3 b=7 8.5 71.82 A a ↙ ④ a=3 b=7 8.5 71.82Aa ↙ ⑤ 3 7 8.5 71.82Aa ↙ ⑥ a=3 b=7↙ 8.5 71.82↙ A ↙ a ↙ ⑦ a=3 b=7↙ 8.5 71.82↙ Aa ↙ ⑧ a=3 b=7↙ 8.5 71.82Aa ↙ 实验③ 输入以下程序: #include int main() {int a,b; float x,y; char c1,c2; scanf("a=%d b=%d",&a,&b); scanf("%f %e",&x,&y); scanf("%c%c",&c1,&c2); printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n",a,b,x,y,c1,c2); return 0; } #include int main() {char c1,c2; c1=97; c2=98; printf(“%c,%c\n ”,c1,c2); printf(“%d%d\n ”,c1,c2); return 0; }

输入输出以及数据类型的错误

说说C特殊的输入输出格式: 输入: 1. scanf可以滤去一些不想要的东西。 举例说明如下: 比如: 输入:a = 1,b = 2; scanf(“a = %d,b = %d”, &a, &b); 再比如: scanf("%d %*d %d",&a, &b); 输入1 2 3回车(系统将1赋予m,将3赋予n,因为*号为忽略输入修饰符,表示跳过它相应的数据所以2不赋予任何变量) 2. 字符串输入 getchar(), scanf(“%c”); scanf(“%s”), gets()区别 其中getchar() 和scanf(“%c”)的功能是一样的。 这两个函数读入的是输入流中当前位置的字符,比如: scanf(“%d”,&n); c = getchar(); 假设输入67/ (假设“/”代表回车),则第一个scanf读入一个整数67后,当前输入流的位置是67之后,即指向回车符,所以第二个getchar()读入的就是一个回车符了,即 c = …\n?。 同样,gets()也是从当前位置读入一行字符串。 比如: scanf(“%d”,&n); gets(str); 此时读入字符数组中的字符串就是“\n” 了 所以通常在用scanf读入一个非字符串的类型之后,如果要读入字符,或字符数组,都用一个额外的getchar()把回车符读掉,若后面跟的不止一个回车符,可能还有多余的空格的话,就用gets()读掉。 和以上不同的是,scanf(“%s”) 读入的时候是会忽略掉空格,回车和制表符的。并且以空格,回车和制表符作为字符串结束的标志。 也就是说,scanf("%s")其实是比较特殊的,它一定会等到所有空白符结束,一直等到它要等的字符串出现,它才读取,在字符串出现之前,出现的所有空白符都会忽略掉。 经常会有这样的题,输入第一行是一个整数,接下来每行的第一个是一个字符,用来表示某种操作,后面再跟一些数据,比如: 4 A 100 2 B 23 A 23 89 B 34 像这种输入就需要小心,读入字符时不要读成回车符。 为了防止意外,我一般是这样处理这类输入的: char model[2]; Scanf(“%d”,&n); for(…,…,…) {

数据类型、运算符和简单的输入输出

《C语言程序设计》课程实验报告 ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡

一、相关知识 1.整型常量就是整常数,可以用三种进制形式表示: (1).十进制数:以非0数字开头的数。如123,-123等,其每个数字位可以是0~9。 (2).八进制数:以数字0开头的数。如0123,-0123等,其每个数字位可以是0~7。 (3).十六进制数:以0x(或0X)开头的数。如0xffff,0x1111,-0x123等,其每个数字位可以是0~9、A~F(或a~f)。 2. 实型常量在C语言中又称为实数或浮点数。在C语言中,实数只采用十进制。它有两种表示形式: (1).十进制形式。这种形式的数由整数部分、小数点和小数部分组成(注意必须有小数点)。如:1.24,0.345,.222,234.0,333.,0.0等。 (2).指数形式。这种形式由三部分组成:实数部分、字母E或e和整数部分。象123x1022可以表示为123E22或123e22。要注意,字母E或e之前必须有数字,之后的数字必须为整数。如e3、2.1e3.5、2.7e、e等都不是合法的指数形式。 3.字符常量 (1)C语言中的字符常量是用单引号(‘)括起来的一个字符。 如’A’、’x’、’D’、’?’、’3’、’X’等都是字符常量。 (2)C语言中还规定有另一类字符常量,它们以'\'开头,被称作转义字符,意思是将反斜杠(\)后面的字符转变成另外的意义。 4. 整型变量 整型变量可分为:基本型、短整型、长整型和无符号型。无符号型又分为无符号整型、无符号短整型和无符号长整型。 5.实型变量 C实型变量分单精度(float型)和双精度(double型)两类。 6.基本算术运算符: + 加/ 取正(双目运算符/ 单目运算符) - 减/ 取负(双目运算符/ 单目运算符) * 乘(双目运算符) / 除(双目运算符) % 整除取余(双目运算符) 7.算术表达式 由算术运算符、括号将数值型的运算元素连接起来,其值为数值量的式子。其中:运算元素可为常量、变量、函数调用等。 8.自增、自减运算符 ++i 前臵自增;先自加1,后引用; i++ 后臵自增;先引用,后自加1 ; --i 前臵自减;先自减1,后引用; i--后臵自减;先引用,后自减1 ; 9.赋值运算时的类型转换

实验八 流类库与输入输出

实验报告 课程:面向对象技术学号:1010431079 姓名:郝祥海 班级:2010级计算机软件(嵌入式系统)1班 教师:周晓 计算机科学与技术系

实验八流类库与输入输出 一、实验目的及要求 1.熟悉流类库中常用的类及其成员函数的用法; 2.掌握标准输入/输出及格式控制; 3.掌握对文件的应用方法。 二、实验环境 硬件:计算机软件:Microsoft Visual C++ 三、实验内容 1.声明一个学生类数组,输入数据,显示出来,使用I/O流把此数组的内容写入磁盘文件,再显示出文件内容。学生类具有的属性如下:姓名name、学号number、班号classno、性别sex、出生日期birthday,其中“出生日期”声明为一个“日期”类内嵌子对象。 四、实验结果(附截图) 五、总结 通过本次实验,我了解到流是一种抽象,它负责在数据的生产者和消费者之间建立联系,并管理数据的流动。我对文件的输入输出流有了更深的了解。 六、附录(源程序清单) #include #include #include using namespace std; class Student{

public: Student(string n,int nu,int cl,char s); string GetName(){return name;} int GetNumber(){return number;} int GetClassno(){return classno;} char GetSex(){return sex;} private: string name; int number; int classno; char sex; }; Student::Student(string n,int nu,int cl,char s):name(n),number(nu),classno(cl),sex(s){} int main(){ Student a[3] = {Student("Frank",101,1,'M'), Student("Lucy",201,2,'W'), Student("Mike",301,3,'M')}; int i; for(i=0;i<3;i++) { cout << "姓名\t" << a[i].GetName() << "\t学号\t" << a[i].GetNumber() << "\t班号\t" << a[i].GetClassno() <<"\t性别\t"<

基本数据类型与输入输出

评分 签名 日期湖南商学院实验报告 课程名称C++语言程序设计 实验名称基本数据类型与输入输出专业班级 姓名 学号 实验日期第二周星期节实验地点 2011—2012学年度第下学期

一、实验目的 1.掌握C++语言中的简单数据类型及输入输出方法。 2.学会利用学习的数据类型与输入输出方法,编制简单的C++程序。 3.弄清基本数据类型的字节宽度和范围表示。 二、实验内容 1.编写一个程序,输出基本数据类型char, short, int, long, float, double的数据类型的长度。 #include void main() { cout<<"The length of \"char\" is:"<>称为抽取操作符,其作用是从cin流中提取字符。 #include #include void main() { float r,h,l,s,sq,vq,vz; const float pi=3.14; cout<<"请输入圆半径r,圆柱高h:"<>r>>h; l=2*pi*r; s=r*r*pi; sq=4*pi*r*r; vq=4.0/3.0*pi*r*r*r; vz=pi*r*r*h; cout<<"圆周长为: l="<

D(T.setf(ios::left, ios::adjustfield);) D(T.fill('0');) D(T << "fill char: " << T.fill() << endl;) D(T.width(8);) T << i << endl; D(T.setf(ios::right, ios::adjustfield);) D(T.width(8);) T << i << endl; D(T.setf(ios::internal, ios::adjustfield);) D(T.width(8);) T << i << endl; D(T << i << endl;) // Without width(10) D(T.unsetf(ios::showpos);) D(T.setf(ios::showpoint);) D(T << "prec = " << T.precision() << endl;) D(T.setf(ios::scientific, ios::floatfield);) D(T << endl << f << endl;) D(T.setf(ios::fixed, ios::floatfield);) D(T << f << endl;) D(T.setf(0, ios::floatfield);) D(T << f << endl;) D(T.precision(16);) D(T << "prec = " << T.precision() << endl;) D(T << endl << f << endl;) D(T.setf(ios::scientific, ios::floatfield);) D(T << endl << f << endl;) D(T.setf(ios::fixed, ios::floatfield);) D(T << f << endl;) D(T.setf(0, ios::floatfield);) D(T << f << endl;) D(T.width(8);) T << s << endl; D(T.width(36);) T << s << endl; D(T.setf(ios::left, ios::adjustfield);)

相关文档
相关文档 最新文档