当前位置:文档之家› 第2章基本数据类型与输入输出

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

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

C++习题第02章 基本数据类型、运算符与表达式

第02章基本数据类型、运算符与表达式 1. 选择题 (1)在32位机中,int型字宽为()字节。 A) 2 B) 4 C) 6 D) 8 (2)下列十六进制的整型常数表示中,错误的是()。 A) 0xad B) 0X11 C)0xA D) 4ex (3)设n=10,i=4,则执行赋值运算n%=i-1后,n的值是()。 A) 0 B) 1 C) 2 D) 3 (4)若有a=2,b=4,c=5,则条件表达式a>b?a:b>c?a:c的值为()。 A) 0 B) 2 C) 4 D) 5 (5)若有a=1,b=2,则表达式++a==b的值为()。 A) 0 B) 1 C) 2 D) 3 2.简答题 (1)指出下列数据中哪些可作为C++的合法常数? (a) 588918 (b) 0129 (c) 0x88a (d) e-5 (e) ″A″ (f) .55 (g) ’\\’ (h) 0XCD (i) 8E7 (j) π (2)指出下列符号中那些可作为C++的合法变量名? (a) ab_c (b) β (c) 3xyz (d) if (e) cin (f) a+b (g) NAME (h) x! (i) _temp (j) main (3)根据要求求解下列各表达式的值或问题。 (a) (int)3.5+2.5 (b) (float)(5/2)>2.4 (c) 21/2+(0xa&15) (d) 设int i=10,则表达式i&&(i=0)&&(++i)的值是多少?该表达式运算结束后变量i的值为多少? (e) 设int a=1,b=2,c=3;,求表达式a

数据类型与输入输出

学生实验报告 学号 : 日期 : 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)调试运行程序并观察运行结果。

java基本数据类型习题(选择24)

1、下列哪一个是合法的标识符: A、12class; B、+viod; C、-5; D、_black; 2、下列哪一个不是JAVA语言中保留字: A、if; B、sizeof; C、private; D、null; 3、下列描述中正确的一项是: A、标识符首字符的后面可以跟数字; B、标识符不区分大小写; C、复合数据类型变量包括布尔型、字符型、浮点型; D、数组属于基本数据类型; 4、下列哪一项不属于变量的组成部分: A、变量名; B、变量属性; C、变量初值; D、变量大小; 5、下列关于变量组成部分描述正确的一项是: A、变量名不是标识符;

B、变量名是标识符; C、浮点型属于复合类型; D、变量属性分为:基本类型和符合类型; 6、下列选项中,哪一项不属于JAVA语言的简单数据类型: A、整数型; B、数组; C、字符型; D、浮点型; 7、下列关于变量作用域的描述中,不正确的一项是: A、变量属性是用来描述变量作用域的; B、局部变量作用域只能是它所在的方法的代码段; C、类变量能在类的方法中声明; D、类变量的作用域是整个类; 8、下列关于基本数据类型的说法中,不正确的一项是: A、boolean是JAVA非凡的置值,或者为真或者为假; B、float是带符号的32位浮点数; C、double是带符号的64位浮点数; D、char应该上是8位的Unicode字符; 9、下列关于溢出的说法中,正确的一项是: A、一个整型的数据达到整型能表示的最大数值后,再加1,则机器产生上溢,结果为整型的最大值; B、一个整型的数据达到整型能表示的最小数值后,再减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基本数据类型与数组(最新整理)

民族学院实验报告 计算机科学 系 级 班 指导教师 报告人20 年 月 日 成 绩 课程名称 JAVA 语言程序设计实验名称实验二 基本数据类型与数组实验 目的 1.掌握基本数据类型及其相互之间的转换2.掌握JAVA 中数组的使用实验仪器 和器材具有JDK 环境的计算机一台 实验内容和要求 一、输出希腊字母表 1.请按模板要求,将【代码】替换为Java 程序代码,运行该程序时在命令窗口中输出希腊字母表。其运行效果如图 2.1所示。 图2.1 输出希腊字母表 GreekAlphabet.java public class GreekAlphabet { public static void main(String[] args) { int startPosition=0,endPosition=0; char cStart='α',cEnd='ω'; startPosition=(int )cStart; //cStart 做int 型数据转换,并将结果赋值给startPosition endPosition=(int )cEnd; //cEnd 做int 型数据转换,并将结果赋值给EndPosition System.out.println("希腊字母\'α\'在Unicode 表中的顺序位置:"+(int)cStart); System.out.println("希腊字母表:"); for (int i=startPosition;i<=endPosition;i++){ char c='\0'; cStart=(char )i; //i 做char 型转换运算,并将结果赋值给c System.out.print(" "+c); if ((i-startPosition+1)%10==0) System.out.println(); } } } 2.实验后练习 (1)将一个double 型数据直接赋值给float 型变量,程序编译时提示怎样的 错误? 答:程序提示的内容为:“可能损失精度”。 (2)在应用程序的main 方法中增加语句:

第二章JAVA的基本数据类型

第2章Java的基本数据类型 本章试验的主要任务是正确理解和掌握Java基本类型数据的使用方法,包括:掌握各种不同类型数据之间的转换规则、运算规则;学会使用Java运算符、表达式,掌握运算符的优先级、表达式的运算规则。 2.1 实验一:Java 的基本类型数据的应用 1. 实验目的 1) 了解Java的基本数据类型的特点; 2) 掌握各种类型变量的声明、赋值、转换及运算方式。 2. 实验要求 编写并实现程序,完成对基本类型变量的声明、赋值,并对变量进行简单运算输出运算结果。 3. 实验内容 实验示例 2.1.1. 在程序中实现对整型变量的定义、赋值、运算并输出运算结果。执行程序并分析运算结果。 使用Jcreator开发工具完成实验,其操作步骤如下: ⑴执行JCreator,进入JCreator开发环境窗口; ⑵为了方便起见,关闭一些视图窗口,只留下编辑和常规输出(Build Output)窗口(如图2-1所示); ⑶执行“File”→“New”菜单下的“File…”项,在“File Wizard”对话框的文件名栏中输入“Practice2_1”,根据需要,可以改变文件路径。一般来说,可以创建一个文件夹,用该文件夹来存放你开发程序,例如E:\javaTest; ⑷新建文件后,在编辑窗口输入如图2-1中所示的java程序源代码; ⑸完成代码的输入之后,执行“Build”菜单中的“Compile File”命令项或单击工具栏上的编译按钮编译源程序文件; ⑹完成编译之后,执行“Build”菜单中的“Execute File”命令项或单击工具栏上的运行程序按钮执行程序。执行结果如图2-2所示。 下边我们来分析一下程序及程序的输出结果: 在程序中,定义了两个字节(byte)变量b1和b2、两个短整型(shortt)变量s1和s2、两个整型(int)变量i1和i2、两个长整数变量(long)l1和l2,并分别对它们进行了简单的赋值运算。最后分别输出它们的十进制值,s1的二进制表示形式的值,l2十六进制表示形式的值。

常用数据类型的使用

刚接触编程地朋友往往对许多数据类型地转换感到迷惑不解,本文将介绍一些常用数据类型地使用. 我们先定义一些常见类型变量借以说明 ; ; ; ; []"程佩君"; []; *; ; ; ; 一、其它数据类型转换为字符串 短整型() ()将转换为字符串放入中,最后一个数字表示十进制 (); 按二进制方式转换 长整型() (); 浮点数() 用可以完成转换,这是中地例子: , ; *; ; ( , , , ); 运行结果: : '' : : 资料个人收集整理,勿做商业用途 表示小数点地位置表示符号为正数,为负数 变量 "北京奥运"; ()(); 变量 ("程序员"); * (); 资料个人收集整理,勿做商业用途 (); (); (); 变量 (""); * (); 资料个人收集整理,勿做商业用途 (); (); 变量 类型是对地封装,因为已经重载了操作符,所以很容易使用 ("");

* 不要修改中地内容 (); 通用方法(针对非数据类型) 用完成转换 []; ''; ; ; ; ( , ""); ( , ""); ( , ""); ( , ""); 二、字符串转换为其它数据类型 (,""); 短整型() (); 长整型() (); 浮点() (); 变量 ; 变量 ("程序员"); 完成对地使用 (); 变量 类型变量可以直接赋值 (""); (); 变量 类型地变量可以直接赋值 (""); (); 三、其它数据类型转换到 使用地成员函数来转换,例如: 整数() (""); 浮点数() (""); 字符串指针( *)等已经被构造函数支持地数据类型可以直接赋值 ; 对于所不支持地数据类型,可以通过上面所说地关于其它数据类型转化到*地方法先转到*,

第二章数据类型.

第二章 Java 中的数据类型 本章知识要点 标识符 Java 注释 Java 数据类型 2.1 使用规范的标识符为变量命名: 2.1.1标识符命名规则: 在 Java 中,标识符用来为程序中的常量、变量、方法、类、接口和包命名 . Java 中的标识符有以下四种命名规则 : 1. 标识符由字母、数字、下划线 (_或美元符号 ($组成 . 2. 标识符的首字母由字母、下划线 (_或美元符号 ($开头,不能以数字开头 . 3. 标识符的命名不能与关键字、布尔值(true,false 和 null 相同。 4. 标识符区分大小写,没有长度限制,坚持见名知义的原则 .

2.1.2 关键字 : 关键字是 Java 语言保留的,为其定义了固定含义的特殊标识符 . 注意 :关键字全部为小写字母,程序员不能将关键字定义为标识符,否则出现编译错误 . Java 中定义的 48个关键字如下表所示 : 提示 : 见名知义的原则 : 是指在使用标识符命名时,要使用能反映被定义者含义或作用的字符。这样,其他人在阅读代码时通过名称就可以对程序有所理解。

驼峰命名法就是当使用标识符命名时,如果是由一个或多个单词连接在一起,第一个单词以小写字母开始,第二个单词的首字母大写或每一个单词的首字母都采用大写字母,这样的变量名看上去就像骆驼峰一样此起彼伏,故取名。如fileName,username. 2.2 使用注释对代码进行解释说明 注释是程序开发人员和程序阅读者之间交流的重要手段,是对代码的解释和说明。好的注释可以提高软件的可读性,减少软件的维护成本 . 在 Java 中,提供了 3种类型的注释 : 2.2.1 单行注释 单行注释指的是只能书写一行的注释,是最简单的注释类型,用于对代码进行简单的说明 . 当只有一行内容需要注释的时候,一般使用单行注释。在 Eclipse 中默认使用” Ctrl ” + “ /” , 可以快捷实现单行注释 . 单行注释的语法 : //单行注释 在语法中 单行注释使用“ //” 开头 . “ //”后面的内容都被认为是注释 . 注意:1. 单行注释不会被编译 2.“ //”不能放到被注释代码的前面,否则这行代码会被注释。 2.2.2 多行注释

a 基本数据类型

Java 中的基本数据类型 Java 中的数据类型可以分为两种: 基本数据类型 整型 byte short int long 浮点型 float double 字符型 char 布尔型 boolean 引用数据类型 可以说,除了基本类型以外的所有类型都是引用数据类型 主要包括类,接口,数组等 如下图所示 基本数据类型在内存中的分配 数据类型 基本数据类型 引用数据类型 数值型 字符型(char ) 布尔型(boolean ) 整数类型(byte, short, int, long ) 浮点类型(float, double ) 类(class ) 接口(interface ) 数组( [ ] )

注意!:表格里的^代表的是次方 基本数据类型的转换 有两种方式:自动转换和强制转换,通常发生在表达式中或方法的参数传递时。 1 自动转换 具体地讲,当一个较“小”数据与一个较“大”的数据一起运算时,系统将自动将“小”数据转换成“大”数据,再进行运算。而在方法调用时,实际参数较“小”,而被调用的方法的形式参数数据又较“大”时(若有匹配的,当然会直接调用匹配的方法),系统也将自动将“小”数据转换成“大”数据,再进行方法的调用,自然,对于多个同名的重载方法,会转换成最“接近”的“大”数据并进行调用。这些类型由“小”到“大”分别为(byte,short,char)--int--long--float—double。这里我们所说的“大”与“小”,并不是指占用字节的多少,而是指表示值的范围的大小。 例如 byte b=10; int i=b;(将byte数据向int赋值时,完成了自动转换) char c=’A’; int i=c;(这时会将’A’对应的ASCII码值赋值给i) 2 强制转换 将“大”数据转换为“小”数据时,你可以使用强制类型转换。 例如: int n=(int)1.23456; 输出结果为1 可以想象,这种转换肯定可能会导致溢出或精度的下降。 注意

第2章 基本数据类型-习题(C语言)

第2章基本数据类型 一.选择题 1.不合法的字符常量是【】。 A) ‘\t’B) “B” C) ‘a’ D)’\x32’ 2.合法的字符常量是【】。 A) ‘\084’ B) ‘\84’ C) ‘ab’ D)’\x4A’ 3.C语言提供的合法的数据类型关键字是【】。 A) Float B) Signed C) integer D)char 4.属于合法的C语言长整型常量的是【】。 A)2736 B)0L C)2E10 D)(long)5876273 5.下面选项中,不是合法整型常量的是【】。 A)160 B)-0xcdg C)-01 D)-0x48a 6.以下所列的C语言常量中,错误的是【】。 A)0xFF B)1.2e0.5 C)2L D)’\72’ 7.下面四个选项中,均是不正确的8进制数或16进制数的选项是【】。 A)016 0x8f 018 B)0abc 017 0xa C)010 -0x11 0x16 D)0a12 7ff -123 8.下选项中不属于C语言的类型是【】。 A)signed short int B)unsigned long int B)unsigned int D)long short 9.判断int x = 0xaffb1。x的结果是【】。 A)赋值非法 B)溢出 C)为affb D)为ffbc 10.下面选项中,是合法浮点数的是【】。 A)+1e0.5 B)-.60 C)123e D)-e3 11.在C语言中,要求参加运算的数必须是整数的运算符是【】。 A)/ B)* C)% D) = 12.在C语言中,字符型数据在内存中存放形式是【】。 A)原码 B)BCD码 C)反码 D)ASCII码

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

(完整版)实验2基本数据类型与数组

民族学院实验报告 计算机科学系级班指导教师 报告人20 年月日成绩 课程 名称JAVA语言程序设计 实验名称实验二基本数据类型与数组实验 目的 1.掌握基本数据类型及其相互之间的转换 2.掌握JAVA中数组的使用 实验仪器 和器材 具有JDK环境的计算机一台 实验内容 和要求 一、输出希腊字母表 1.请按模板要求,将【代码】替换为Java程序代码,运行该程序时在命令窗 口中输出希腊字母表。其运行效果如图2.1所示。 图2.1 输出希腊字母表 GreekAlphabet.java public class GreekAlphabet { public static void main(String[] args) { int startPosition=0,endPosition=0; char cStart='α',cEnd='ω'; startPosition=(int)cStart; //cStart做int型数据转换,并将结果赋值给startPosition endPosition=(int)cEnd; //cEnd做int型数据转换,并将结果赋值给EndPosition System.out.println("希腊字母\'α\'在Unicode表中的顺序位置:"+(int)cStart); System.out.println("希腊字母表:"); for (int i=startPosition;i<=endPosition;i++){ char c='\0'; cStart=(char)i; //i做char型转换运算,并将结果赋值给c System.out.print(" "+c); if ((i-startPosition+1)%10==0) System.out.println(); } } } 2.实验后练习 (1)将一个double型数据直接赋值给float型变量,程序编译时提示怎样的 错误? 答:程序提示的内容为:“可能损失精度”。 (2)在应用程序的main方法中增加语句:

基本数据类型的使用

数据类型、运算符和表达式 一、实验内容 1、写出一个程序测试用户系统中各种数据类型的长度。 #include int main(void) {printf(“字符类型数据的字长为%d\n”,sizeof(char)); printf(“短整型类型数据的字长为%d\n”,sizeof(short)); printf(“整型类型数据的字长为%d\n”,sizeof(int)); printf(“长整型类型数据的字长为%d\n”,sizeof(long)); printf(“浮点数类型数据的字长为%d\n”,sizeof(float)); printf(“双精度类型数据的字长为%d\n”,sizeof(double)); return 0; } 2、指出下面程序错误所在 #include main(); float r,s; r=5.0; s=3.14159*r*r; printf(“%f”,s); 3、常见转义字符对输出的控制作用。 main() { int a,b,c; a=5,b=6,c=7; printf("12345678123456781234567812345678\n"); /* 打印一个标尺以便检查输出结果*/ printf("%d\n\t%d %d\n %d %d\t\b%d\n",a,b,c,a,b,c); /* 打印1个字符串*/ printf("c:\\a.txt"); /* 打印一个文件名*/ printf("\n"); } 4、整型数据的溢出错误。 整型(int型)数据的表达范围是-32768~32767,如果最大允许值32767+1,最小允许值-32768-1,会出现什么情况? main() { int a,b; a=32767; b=a+1; printf("a=%d,a+1=%d\n",a,b); a=-32768;

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 编码形式存在的,一个字符可能使用一个字节或多个字节来表

基本数据类型与基本运算

第二章基本数据类型与基本运算 本章主要介绍程序设计中高级语言提供的数据类型和其上允许的基本运算。在介绍这些内容时,我们通过穿插一些实例介绍如何应用数据类型与基本运算来解决一些简单的问题。 2.1 数据类型的概念 2.1.1 为什么程序设计语言中要引入“数据类型”这一概念? 2.1.2 数据类型的概念 数据类型是程序设计语言中的一个非常重要的概念。那么,什么是数据类型呢? 数据类型是由该类型的数据的值域(即值集)和在这些数据上所有施加的运算的集合(即运算集或操作集)组成。值域指出了每一种数据类型的变量合法的数据取值范围,而运算集合则规定了每一种数据类型的变量和数据其上所允许进行的运算。值域和运算集是数据类型的两个基本属性。在下面介绍Pascal语言的数据类型的有关章节中,对每一种数据类型均将说明这两种属性。 2.1.3 数据类型的代数理论基础 一个数据类型是一个二元组(D,R)。其中,D是一个数据类型的值域,R是建立在D上的运算(操作)的集合。这个二元组构成了一个代数系统。其中,D叫做该系统的基集。从本质上说,一个代数系统就是一个带运算的集合,而一个数据类型就是一个代数系统。 从这个概念出发,程序设计语言理论在数据结构的基础上发展了一些数据和类型的代数理论。这些理论属于程序设计语言语义学的范畴,将来,有兴趣的学生在具备了比较深入的基础之后,可以作进一步的了解。 2.1.4 Pascal语言中数据类型的分类 Pascal语言的优点之一是有丰富的数据类型,按照其定义者的不同可分为下面几类,如表2-1所示。 整数类型 实数类型 系统预定义的数据类型布尔类型(逻辑类型) 基本(标准)数据类型 字符类型 Pascal 枚举类型 数据类型子界类型 数组类型 用户自定义的数据类型记录类型构造型数据类型 集合类型 文件类型 指针类型 图2-1 Pascal的数据类型 2.2 基本数据类型 本节介绍四种基本数据类型(Elementary Date Type),它们是整数类型、实数类型、布尔类型(逻辑类型)和字符类型。基本数据类型又称为标准数据类型(Standard Date Type),我国国家标准中将它改称为需求数据类型。基本数据类型是语言系统预先定义或规定的数据类型。 2.2.1 整数类型 整数类型(Integer Date Type)简称整型,在Pascal语言中用类型标识符integer表示整数类型。整型的数据可以是正整数、负整数和零,其中,正整数和零可以省略“+”号。 1.整数类型的值域 任何计算机系统由于受机器字长的限制,它所能表示的整数只是数学中整数集合的一个有穷的子集合。其中,最大整数为maxint,它的值与具体机器的字长有关。一般地,若机器的字长为W时(假设用一位表示数符),由于整数在机器内采用二进制补码表示,因此,

第二章 基本数据类型

第二章基本数据类型 2.1数据概述 一、程序设计概述 一个程序应包括对数据的描述和对数据处理的描述。 1.对数据的描述,即数据结构。数据结构是计算机学科的核心课程之一,有许多专门著作论述,本课程就不再赘述。在C语言中,系统提供的数据结构,是以数据类型的形式出现的。 2.对数据处理的描述,即计算机算法。算法是为解决一个问题而采取的方法和步骤,是程序的灵魂。为此,著名计算机科学家沃思(Nikiklaus Wirth)提出一个公式:数据结构+ 算法= 程序 实际上,一个程序除了数据结构和算法外,还必须使用一种计算机语言,并采用结构化方法来表示 二C语言的数据类型 C语言提供的数据结构,是以数据类型形式出现的。具体分类如下: 1.基本类型分为整型、实型(又称浮点型)、字符型和枚举型四种。 2.构造类型分为数组类型、结构类型和共用类型三种。 3.指针类型。在第9章中介绍。 4.空类型 C语言中的数据,有常量和变量之分,它们分别属于上述这些类型。 本章将介绍基本类型中的整型、实型和字符型三种数据。 三常量和变量 1 常量 常量的概念:在程序运行过程中,其值不能被改变的量称为常量。 常量的分类 (1)整型常量(2)实型常量 (3)字符常量。(4)符号常量。 常量的类型,可通过书写形式来判别。 2 变量 变量的概念:在程序运行过程中,其值可以被改变的量称为变量。 变量的两个要素 (1)变量名。每个变量都必须有一个名字──变量名,变量命名遵循标识符命名规则。 (2)变量值。在程序运行过程中,变量值存储在内存中。在程序中,通过变量名来引用变量的值。 变量要先定义后使用 变量定义的格式:类型说明符变量名;多个变量之间可以用逗号隔开 先定义:1)确定变量的数据类型2)分配存储空间3)决定能做的运算 变量的赋值变量名=值、表达式、函数调用 3.标识符命名规则 (1)有效字符:只能由字母、数字和下划线组成,且以字母或下划线开头。(2)有效长度:随系统而异,但至少前8个字符有效。如果超长,则超长部分被舍弃。 例如,由于student_name和student_number的前8个字符相同,有的系统认为这两个变量,是一回事而不加区别。在TC V2.0中,变量名(标识符)的有效长度

S7-300基本数据类型

STEP7中的基本数据类型 ⑴位(BOOL) 位数据的数据类型为BOOL(布尔)型,在软件编程中BOOL变量的值1和0常用英语单词TURE(真)和FALSE (假)来表示,对应二进制数中的“1”和“0”,常用于开关量的逻辑运算,存储空间为1位。 ⑵字节(BYTE) 字节数据长度为8位,数据格式为B#16#,B代表BYTE,表示数据长度为一个字节(8位),#16#表示十六进制,取值范围为B#16#0~B#16#FF。 ⑶字(WORD) 字数据长度为16位,这种数据可采用4种方法进行描述。 二进制:二进制的格式为2#,如2#101,取值范围为2#0~2#1111_1111_1111_1111,书写时每4位可用下划线隔开,也可直接表示为2#111111111111。 十六进制:十六进制的格式为W#16#,W代表WORD,表示数据长度为16位,#16#表示十六进制,数据取值范围为W#16#0~W#16#FFFF。 BCD码:BCD码的格式为C#,取值范围为C#0~C #999。BCD码是用4位二进制表示1位十进制数,4位二进制中的0000~1001组合分别表示十进制中的0~9,4位二进制中的1010~1111组合放弃不用。BCD码的最高4位用来

表示符号,十六位BCD码的取值范围为-999~+999。在STEP7的数据格式中,BCD码的取值只取正值,与最高4位的符号无关。 无符号十进制数:无符号十进制数的格式为B#(×,×),取值范围为B#(0,0)~B#(255,255),无符号十进制数是用十进制的0~255对应二进制数中的 0000_0000~1111_1111(8位),16位二进制数就需要两个0~255的数来表示,例如: B#(12,254)=2#0000_1100_1111_1110 12254 上面4种数据都是描述一个长度位16位的二进制数,无论你使用哪种方式都可以。例如,如果想得到二进制数0000100110000111,可以使用2#0000_1001_1000_0111,也可以使用W#16#987,还可以使用C#987或者B#(9,135)。在STEP7中,比较常用的是十六进制,即W#16#这种格式。 ⑷双字(DOUBLE WORD) 数据长度为32位,双字的数据格式与字的数据格式相同,也有4种方式,分别为: 二进制:取值范围为2#0~2# 1111_1111_1111_1111_1111_1111_1111_1111。 十六进制:取值范围为DW#16#0~DW#16# FFFF_FFFF。

第2章练习 基本数据类型与输入输出xs答案

1.字符常量与字符串常量的区别是什么? 答:字符常量与字符串常量的主要区别在于:(1)定界符不同。字符常量使用单引号,而字符串常量使用双引号。(2)长度不同。字符常量的长度固定为1,而字符串常量的长度,可以是0,也可以是某个整数。(3)存储要求不同。字符常量存储的是字符的ASCII码值,而字符串常量除了要存储有效的字符外,还要存储一个结束标志’\0’。 二、选择题 1.下列数据类型不是C++语言基本数据类型的是()。 A.字符型 B.整型 C.实型 D.数组 2.在C++语言中,080是()。 A.八进制数 B.十进制数 C.十六进制数 D.非法数 3.下列字符列中,可作为C++语言程序自定义标识符是()。 A.switch B.file C.break D.do 4.下列字符列中,可以作为“字符串常量”的是()。 A. ABC B.″xyz″ C.′uvw′ D. ′a′ 5.字符串”vm\x43\\\np\102q”的长度是()。 A. 8 B. 10 C. 17 D. 16 6.在C++语言中,自定义的标识符()。 A.能使用关键字并且不区分大小写 B.不能使用关键字并且不区分大小写 C.能使用关键字并且区分大小写 D.不能使用关键字并且区分大小写 7.下面标识符中正确的是()。 A._abc B.3ab C. int D.+ab 8.下列不合法的变量名为()。 A.int B.int1 C.name_1 D.name0 9.下列变量名中,非法的是()。 A.A25 B.My_car C.My-str D.abc 10.下列常量中,十六进制int型常量是()。 A.0x5f B.x2a C.046 D.7a 11.下列常量中,不是字符常量的是()。 A.'\n' B."y" C.'x' D.'\7' 12.长双精度浮点型常量的后缀是()。 A.U B.F C.L D.无

基本数据类型

S7-300的数据类型分以下三种: 基本数据类型、复合数据类型和参数类型。 一、基本数据类型 1、位(bit) 常称为BOOL(布尔型),只有两个值:0或1。 如:I0.0,Q0.1,M0.0,V0.1等。 2、字节(Byte)一个字节(Byte)等于8位(Bit),其中0位为最低位,7位为最高位。如:IB0(包括I0.0~I0.7位),QB0(包括Q0.0~Q0.7位),MB0,VB0等。范围:00~FF(十进制的0~255)。 3、字(Word) 相邻的两字节(Byte)组成一个字(Word),来表示一个无符号数,因此,字为16位。 如:IW0是由IB0和IB1组成的,其中I是区域标识符,W表示字,0是字的起始字节。 需要注意的是,字的起始字节(如上例中的“0”)都必须是偶数。 字的范围为十六进制的0000~FFFF(即十进制的0~65536)。 在编程时要注意,如果已经用了IW0,如再用IB0或IB1要特别加以小心。 4、双字(Double Word) 相邻的两个字(Word)组成一个双字,来表示一个无符号数。因此,双字为32位。 如:MD100是由MW100和MW102组成的,其中M是区域标识符,D表示双字,100是双字的起始字节。 需要注意的是,双字的起始字节(如上例中的“100”)和字一样,必须是偶数。 双字的范围为十六进制的0000~FFFFFFFF(即十进制的0~4294967295)。 在编程时要注意,如果已经用了MD100,如再用MW100或MW102要特别加以小心。 以上的字节、字和双字数据类型均为无符号数,即只有正数,没有负数。 5、16位整数(INT,Integer) 整数为有符号数,最高位为符号位,1表示负数,0表示正数。范围为-32768~32767。 6、32位整数(DINT,Double Integer) 32位整数和16位整数一样,为有符号数,最高位为符号位,1表示负数,0表示正数。 范围为-2147483648~2147483647。 7、浮点数(R,Real) 浮点数为32位,可以用来表示小数。浮点数可以为:1.m×2e ,其存储结构如图所示:

第二章基本数据类型和运算

第二章基本数据类型和运算 一、单项选择题 1.下列数据中属于“字符串常量”的是(A)。 A.”a” B.{ABC} C.’abc\0’ D.’a’ 2.下列数据中属于“字符串常量”的是(B)。 A.ABC B.“ABC” C.’abc’ D.’a’ 3.在PC机中,’\n’在内存占用的字节数是(A)。 A.1 B.2 C.3 D.4 4.在PC机中,”a\xff”在内存占用的字节数是(C)。 A.5 B.6 C.3 D.4 5.字符串“ABC”在内存占用的字节数是(B)。 A.3 B.4 C.6 D.8 6.字符串”\’ABCD\’”在内存占用的字节数是(C)。 A.4 B.6 C.7 D.8 7.在C语言中,合法的长整型常数是(A)。 A.0L B.4962710 C.0.054838743 D.2.1869e10 8.在C语言中,合法的短整型常数是(D)。 A.0L B.0821 C.40000 D.0x2a 9.下列数据中不属于“字符常量”的是(C)。 A.‘\xff’ B.‘\160’ C.’070’ D.070 10.char型常量的内存中存放的是(A)。 A.ASCII代码值 B.BCD代码值 C.内码值 D.十进制代码值 11.若int类型数据字长为4,其最大值为(B)。 A.231 B.231-1 C.232-1 D.232 12.常数的书写格式决定了常数的类型和值,03322是(B)。 A.16进制int类型常数 B.8进制int类型常数 C.10进制int类型常数 D.10进制long int类型常数 13.“e2”是(D)。 A.实型常数100 B.值为100的整型常数 C.非法标识符 D.合法标识符 14.要为字符型变量a赋初值,下列语句中哪一个是正确的(A)。 A.char a=’3’; B.char a=”3”; C.char a=%; D.char a=*; 15.要为float类型变量x、y、z赋同一初值3.14,下列说明语句哪一个是正确的(C)。 A.float x,y,z=3.14; B.float x,y,z=3*3.14; C.float x=3.14,y=3.14,z=3.14; D.float x=y=z=3.14; 16.语句“float pi=3.1415926535;”将(D)。 A.导致编译错误 B.说明pi为初值3.1415926535的单精度实型常数 C.导致运行时的溢出错误 D.说明pi为初值3.141593的单精度实型常数 17.算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B)。 A.算术运算、赋值运算、关系运算 B.算术运算、关系运算、赋值运算 C.关系运算、赋值运算、算术运算 D.关系运算、算术运算、赋值运算 18.关系运算符中优先级最低的运算符是(C)。 A.“>=”和“<=” B.“>”和“<” C.“==”和“!=” D.“<=”和“<” 19.逻辑运算符中,运算优先级按从高到低依次为(D)。 A.&&,!,‖ B.‖,&&,! C.&&,‖,! D.!,&&,‖ 20.对C程序在作逻辑运算时判断操作数真、假的表述,下列哪一个是正确的(A)。 A.0为假非0为真 B.只有1为真 C.-1为假1为真 D.0为真非0为假

相关主题
文本预览
相关文档 最新文档