《第三章基本数据类型》由会员分享,可在线阅读,更多相关《第三章基本数据类型(11页珍藏版)》请在金锄头文库上搜索。
1、 第3章 基本数据类型本章目标C+语言的基本数据类型: 整型、实型C+语言的数据(形式): 常数、变量授 课 内 容 3.1 数据类型3.2 常量3.3 变量3.4 数组3.5 字符型数组和字符串处理库函数 调试技术 程序设计举例 3.1、数据类型 程序的主要任务是对数据进行处理,而数据有多种类型,如数值数据、文字数据、图像数据以及声音数据等,其中最基本的、也是最常用的是数值数据和文字数据。 不同类型的数据在存储器中存放的格式也不相同 程序中对各种数据进行处理之前都要对其类型 (也就是存储格式) 预先加以说明,这样做一是便于为这些数据分配相应的存储空间,二是说明了程序处理数据时应采用何种具体运
2、算方法。 数值数据,其存储格式又可以分为整型、长整型、浮点型和双精度型等几种类型; 文字数据也可以分为单个字符和字符串。数据的表示 +的数据有两种:一是常量,一是变量。 常量通过本身的书写格式就说明了该常量的类型;变量必须先说明其类型,否则程序无法为该变量分配存储空间。 在计算机中为了区别不同的数,使用了不同的表示方法。包括:整数的表示实数的表示 字符数据的表示数组的表示数据类型 计算机只能存放二进制数据。不同类型的事物如何区分和描述?由此产生数据类型。 不同类型的数据占据不同长度的存储单元。 不同类型的数据对应不同的值域范围。 不同类型的数据对应不同的操作(运算)及规则。 数据类型越丰富,求
3、解能力越强大。图3.1 C+数据类型的分类3.2、基本数据类型C+语言的基本数据类型: 数据类型 类型说明浮 占用字节字符型 char 1个短整数 short 2个整型 int 4个浮点型 float 4个双精度型 double 8个数据在计算机中的存放 数据在计算机中采用二进制存放;一个字节8个二进制位,示意图如下: 数的表示范围:-2727-1(-128127)显然,一个字节表示数的范围是有限的。要表示更大范围内的数,就要使用多个字节。整数的存储格式字符型 7 0短整型 15 8 7 0 短整数表示范围为:-215215-1(-3276832767)长整型 31 23 16 15 8 7
4、0长整数表示范围为:-231231-1实数的表示实数也称为浮点数,用于表示小数;有两种表示形式:十进制形式:.指数形式:. 31 24 23 16 15 8 7 0 尾数部分 指数部分一般浮点数的可以达到7位有效数字。例如1234.567。双精度浮点数的有效位数可以达到1516位。常数和变量变化的量称变量;不变化的量称常量;常量和变量是计算机语言中数据的两种基本形式。3.2 常量1.整型常量 2进制常量, 例10011101B,10 8进制常量, 例072,0777,0100 10进制常量,例123,456 16进制常量,例0x10001,0xABC,0xffff2.实型常量 0.0, 1.0
5、, -2.68, 3.141593, 637.312, 32767.0, -32768.0, 0.0E0, 6.226e-4, -6.226E-4, 1.267E20, 3.字符型常量 符号常量,例#define PI 3.1415926 字符常量,例a, A, 1, , +, n(换行), r(回车), t(横向跳格), (单引号), 4.字符串常量 Visual C+, 12.34, This is a string.n, 5.布尔型常量值: true和false (1)符号常量用#define定义的常数;类似变量,但不是变量。 例如: #define PI 3.1415926 #defi
6、ne MAXNUM 10000可以出现在表达式中; f1= r * r * PI;但是不能作左值,下列用法是错误的: PI = PI*PI ;用const定义的常数 const double pi=3.1415926;()整、实型常数整型常数的表示范围是:3276832767 例如: 128 ,256实型常数的表示范围是:10-381038 例如: 2.7198 , 1.034e14(3)文字数据表示文字数据有两种:单个字符, 例如,A、0 、 等字符串,例如,“This is a string .”计算机中的文字使用ASCII字符,总共有128个:10个阿拉伯数字52个英文字母32控制字符(
7、非显示字符)34个特殊字符ASCII码对应的字符:A的值65、a的值97(差是32)0的值48回车键的值13、ESC键的值27问号?的值63、*的值423.3 变量+的数据变量说明语句的格式为: ;4种+整数数据类型的说明符分别为:char c1, c2; / 说明了2个字符型变量 int i, j, k; / 说明了3个整型变量long len; / 说明了1个长整型变量说明浮点类型和双精度类型的变量 float average, sum; /说明了两个浮点类型的变量 double distance, weight; /说明了两个双精度类型的变量 1、变量变量定义变量命名规则变量使用规则变量
8、初始化变量引用类型修饰符(1)变量定义用基本数据类型描述符说明的对象是定义的变量。例如:int i,j,k,*p;float eps,f0,f15;char c0,c1,c2100;double array1010;(2)变量(标识符)命名命名规则: (1)变量名只能由字母、数字或下划线组成; (2)变量名的第一个字符必须是字母或下划线; (3)变量名长度不超过32个字符(TC); (4)不要用保留字定义变量名(有32个保留字)。合法变量名: a、 b1、 _area、employee_name不合法变量名: 1-name、 max one 、float 、*account(3)变量使用规则先
9、定义,后使用; 例如: int a,b,c; a=1;b=2; c= a+b; 下列用法是错误的: d=a+c; coutmax;不能用保留字作变量名 例如: sin=1.0; cout= “Print Formatting.”;(4)变量初始化变量初始化就是给变量赋初值;有两种形式:先定义,再赋初值; 例如: int sum,fac; sum=0;fac=1;定义时赋值 例如: char c=A; int count = 0;(5)类型修饰符在基本数据类型前加类型修饰符,可以改变数据表示的范围。常用的有:unsigned 无符号long 长型short 短型 例如: unsigned cha
10、r 表示范围变为0255 unsigned int 表示范围变为065535例3.1 VC0301.CPP用牛顿迭代法求平方根。迭代公式为: 迭代结束的条件为: 算法分析:定义两个工作变量x0和x1;x1 = 1; / 迭代初值取1 do x0 = x1;while(x1与x0的相对误差大于控制参数);/ 3-1:用迭代公式求平方根#include #include #define EPS 1.0e-10int main() double x, y; cout x; double x0, x1; x1 = 1.0; if(x0.0) do x0 = x1; x1 = (x0+x/x0)/2; while(fabs(x0-x1)/x1)=EPS); /fabs()函数为求绝对值的库函数 y= x1; else y= x; if(y0) cout Negative Value have not square root ! endl; else cout The square root of x is y endl; return 0;字符和字符串的区别字符是用单引号括起来的单个字符,它在存储器中占1个字节;字符