版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机基础与程序设计计算机基础与程序设计2.1 C+的数据类型的数据类型计算机基础与程序设计计算机基础与程序设计姓名:曼迪姓名:曼迪年龄:年龄:10岁岁身高:身高:123.4CM文本文本整数整数带有小数带有小数计算机基础与程序设计计算机基础与程序设计直径:直径:24.6CM直径:直径: 12742.02KM计算机基础与程序设计计算机基础与程序设计不同的数据采用不同类型的存储方式不同的数据采用不同类型的存储方式计算机基础与程序设计计算机基础与程序设计:一个二进制一个二进制位位( bit )存储阵列存储阵列 计算机基础与程序设计计算机基础与程序设计:8位一个位一个字节字节( byte )存储阵列存
2、储阵列 计算机基础与程序设计计算机基础与程序设计:16位一个位一个字字( word )存储阵列存储阵列 计算机基础与程序设计计算机基础与程序设计:32位一个位一个字字( word )存储阵列存储阵列 计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计类型类型类型标识符类型标识符字节字节数值范围数值范围备注备注短整型短整型short int2-3276832767-215215-1无符号短整型无符号短整型unsigned short int20655350216-1整型整型signed int4-2147483648 2147
3、483647-231231-1无符号整型无符号整型unsigned int4042949672950232-1长整型长整型long int4-2147483648 2147483647-231231-1无符号长整型无符号长整型unsigned long int4042949672950232-1计算机基础与程序设计计算机基础与程序设计int a = 23;short int b=45;计算机基础与程序设计计算机基础与程序设计n十进制十进制 (Decimal)n八进制八进制 (Octal)n十六进制十六进制 (Hexadecimal)int a = 21;int a = 021;int a =
4、0 x21;输出:输出:21输出:输出:17输出:输出:33计算机基础与程序设计计算机基础与程序设计在内存中的存储形式(在内存中的存储形式(2个字节)个字节) 十进制十进制 50 110010 二进制二进制 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0高地址字节高地址字节 低地址字节低地址字节 计算机基础与程序设计计算机基础与程序设计q没有符号位,只能表示非负数没有符号位,只能表示非负数q无符号数类型必须指定为无符号数类型必须指定为unsigned计算机基础与程序设计计算机基础与程序设计q二进制补码二进制补码表示,首位为符号位表示,首位为符号位q指定指定signed或缺省情况
5、,即为有符号数或缺省情况,即为有符号数计算机基础与程序设计计算机基础与程序设计(1)补码的概念)补码的概念 u 正数:与原码一致,首位为正数:与原码一致,首位为0u 负数:绝对值取反加负数:绝对值取反加1,首位为,首位为1u 零零 :各位全为:各位全为0计算机基础与程序设计计算机基础与程序设计0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 01 1 1 1 1 1 1 1 1 1 0 0 1 1 0 15050的原码的原码-50-50的补码的补码 取反取反 加加1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 0short int i=-50;/占占2字节字节 计算机
6、基础与程序设计计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计int main() short int x=-50; unsigned short int y; y=x; cout“x=xendl; cout“y=yendl;计算机基础与程序设计计算机基础与程序设计1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 0-50的补码的补码xy=x;y65486的原码的原码1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 0计算机基础与程序设计计算机基础与程序设计int main() short int a = 32767; a=a+1; couta=aendl;计算
7、机基础与程序设计计算机基础与程序设计0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1+132767的原码的原码1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-32768的补码的补码计算机基础与程序设计计算机基础与程序设计int main() short int a = 32767; couta+1endl;int main() int a = 2147483647; couta+1endl;不溢出不溢出溢出溢出计算机基础与程序设计计算机基础与程序设计2.2 浮点型浮点型 31.4159a=0.314159e2a=3.14159e1a=31.4159e0a=314.
8、159e-1规范化指数形式规范化指数形式以以10为底为底float a=31.4159;float a=3.14159e1;计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计类型类型类型标识符类型标识符字节字节绝对值范围绝对值范围单精度单精度型型float43.410-383.41038双精度型双精度型double81.710-3081.710308长双精度型长双精度型 long double81.710-3081.7103086位有效数字位有效数字15位有效数字位有效数字计算机基础与程序设计计算机基础与程序设计3131 3030 2929 2828 2727 2
9、626 2525 2424 2323 2222 2121 2020 1919 1818 1717 1616 1515 1414 1313 1212 1111 1010 9 98 87 76 65 54 43 32 21 10 0指数位指数位尾数位尾数位符号位符号位ABCD内存中逆序存储:内存中逆序存储:D C B A计算机基础与程序设计计算机基础与程序设计123456.011110001001000000.01.11100010010000000 转化为二进制转化为二进制小数点左移小数点左移16位位1.11100010010000000 * (216)删除最高位的删除最高位的111100010
10、010000000后面用后面用0补够补够23位位11100010010000000000000计算机基础与程序设计计算机基础与程序设计 指数位共指数位共8位,可以表示范围是位,可以表示范围是0 255的无符号的无符号整数,也可以表示整数,也可以表示-128 127的有符号整数。但因为的有符号整数。但因为指数是可以为负的,所以为了统一把十进制的整数化指数是可以为负的,所以为了统一把十进制的整数化为二进制时,都先加上为二进制时,都先加上127。16+127=143二进制表示为:二进制表示为:10001111 符号位(整数):符号位(整数):00 10001111 11100010010000000
11、000000 计算机基础与程序设计计算机基础与程序设计3131 3030 2929 2828 2727 2626 2525 2424 2323 2222 2121 2020 1919 1818 1717 1616 1515 1414 1313 1212 1111 10109 98 87 76 65 54 43 32 21 10 00 0 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0指数位指数位尾
12、数位尾数位符号位符号位0 10001111 11100010010000000000000 转化为转化为16进制:进制:47 F1 20 00高低位颠倒:高低位颠倒:00 20 F1 47计算机基础与程序设计计算机基础与程序设计练习练习54321.0计算机基础与程序设计计算机基础与程序设计n由于浮点型变量能够表示的有效数字有限,将由于浮点型变量能够表示的有效数字有限,将有效位以外的数字舍去造成误差。有效位以外的数字舍去造成误差。int main( ) float a=123.456741e5; coutaendl; return 0;计算机基础与程序设计计算机基础与程序设计整数部转化为二进制整
13、数部转化为二进制11110110.456转化为二进制转化为二进制十进制小数转化为二进制数方法十进制小数转化为二进制数方法 乘以乘以2直到没有了小数为止(取整数部分为直到没有了小数为止(取整数部分为二进制位)。二进制位)。计算机基础与程序设计计算机基础与程序设计0.456*2=0.9120.912*2=1.8240.824*2=1.6480.648*2=1.2960.296*2=0.5920.592*2=1.1840.184*2=0.3680.368*2=0.7360.736*2=1.4720.472*2=0.944取整数部分取整数部分0111010010计算机基础与程序设计计算机基础与程序设计
14、 即使超过尾数的最大长即使超过尾数的最大长度度23位也仍有小数!位也仍有小数!这就是这就是著名的浮点数精度问题。著名的浮点数精度问题。计算机基础与程序设计计算机基础与程序设计1111011.01110100101111001加上前面的整数部算够加上前面的整数部算够24位即可位即可小数点左移小数点左移6位位 1.111011011101001011110011.11101101110100101111001 * (26)删除最高位的删除最高位的111101101110100101111001计算机基础与程序设计计算机基础与程序设计0 10000101 1110110111010010111100
15、16+127=133二进制表示为:二进制表示为:10000101 符号位(整数):符号位(整数):0转化为转化为16进制:进制: 42 F6 E9 79高低位颠倒:高低位颠倒:79 E9 F6 42计算机基础与程序设计计算机基础与程序设计char ch=A;存放该字符相应的存放该字符相应的ASCIIASCII代码代码01000001A计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计int main( )int i,j; char c1;i=A+5;j=B;c1=65+5;couti=i j=jn;coutc1=c1endl;return 0;注意:字符型数据只能
16、存放注意:字符型数据只能存放0255范围内的整数。范围内的整数。计算机基础与程序设计计算机基础与程序设计int main( )char c1,c2;c1=a;c2=b;c1=c1-32;c2=c2-32;coutc1 c2endl;return 0;计算机基础与程序设计计算机基础与程序设计 有些有些ASCII的字符代表某些操作,不能打印出的字符代表某些操作,不能打印出来,如回车、换行等,可用两种方式表示这些字符。来,如回车、换行等,可用两种方式表示这些字符。 1)用)用ASCII码的形式码的形式 char re=13; 2)用转义字符)用转义字符 char re= n;计算机基础与程序设计计算
17、机基础与程序设计转义字符转义字符 意义意义ASCIIASCII码值码值( (十进制十进制) )a 响铃响铃(BEL)(BEL)007007b 退格退格(BS)(BS)008008f 换页换页(FF)(FF)012012n 换行换行(LF)(LF)010010r 回车回车(CR)(CR)013013t 水平制表水平制表(HT)(HT)009009v 垂直制表垂直制表(VT) (VT) 011011 反斜杠反斜杠092092? 问号字符问号字符063063单引号字符单引号字符039039 双引号字符双引号字符0340340 空字符空字符(NULL)(NULL)000000ddd1 1到到3 3位位
18、8 8进制数所代表的字符进制数所代表的字符xhh 1 1到到2 2位位1616进制数所代表的字符进制数所代表的字符可以利用以下代码显示可以利用以下代码显示扩展扩展ASCII码:码:system(chcp 437);利用以下代码转回中文利用以下代码转回中文显示:显示:system(chcp 936);计算机基础与程序设计计算机基础与程序设计46 编译系统在见到字符编译系统在见到字符“”时,会接着找它后面的时,会接着找它后面的字符,把它处理成一个字符,在内存中只占一个字节。字符,把它处理成一个字符,在内存中只占一个字节。 int main( )int a=1;couta aendl;coutata
19、endl;return 0;计算机基础与程序设计计算机基础与程序设计int main( )coutc:tctcendl;return 0;int main( )coutc:tctcendl;return 0;计算机基础与程序设计计算机基础与程序设计在程序运行期间其值可以改变的量称为变量。在程序运行期间其值可以改变的量称为变量。 int a;float b;double c;char d;变量类型变量类型变量名变量名计算机基础与程序设计计算机基础与程序设计n变量有一个名字,即标识符变量有一个名字,即标识符n变量在内存中占据一定的存储单元变量在内存中占据一定的存储单元n变量占据存储空间的大小由其类
20、型决定变量占据存储空间的大小由其类型决定n程序使用变量名表示这个变量所占据的存储单程序使用变量名表示这个变量所占据的存储单元里存储的数据的值元里存储的数据的值n变量要变量要“先定义,后使用先定义,后使用”计算机基础与程序设计计算机基础与程序设计 只能由字母、数字、下划线只能由字母、数字、下划线(_)组成;组成; 第一个字符必须为字母或下划线;第一个字符必须为字母或下划线; C+语言标识符是大小写敏感的;语言标识符是大小写敏感的; 不要与关键字、系统函数名和类名重复。不要与关键字、系统函数名和类名重复。计算机基础与程序设计计算机基础与程序设计 sum, average, total, day,
21、month, Student_name, tan, BASIC, li_ling M.D.John, $123, #33, 3G64, Ling li, C+, Zhang-ling, U.S.A.计算机基础与程序设计计算机基础与程序设计asm auto break case catch char class const continuedefault delete dodoubleelseenumexternfloatforfriendgotoifinlineintlongnewoperatoroverloadprivateprotectedpublicregisterreturnshort
22、signedsizeofstaticstructswitchthistemplatethrowtrytypedefunionunsignedvirtualvoidvolatilewhileC+常用的关键字常用的关键字:计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计计算机基础与程序设计 单字符的名字也是有用的,常见的如单字符的名字也是有用的,常见的如i,j,k,m,n,x,y,z等,它们通常可用作函数内的局部变等,它们通常可用作函数内的局部变量。量。maxvalmaxValueUntilOverflow计算机基础与程序设计计算机基础与程序设计 例如例如Windows应用程序的标识符
23、通常采用应用程序的标识符通常采用“大小写大小写”混排的方式,如混排的方式,如AddChild。 而而Unix应用程序的标识符通常采用应用程序的标识符通常采用“小写小写加下划线加下划线”的方式,如的方式,如add_child。别把这两类。别把这两类风格混在一起用。风格混在一起用。 计算机基础与程序设计计算机基础与程序设计例如:例如:int x, X;/ 变量变量x 与与 X 容易混淆容易混淆void foo(int x); / 函数函数foo 与与FOO容易混淆容易混淆void FOO(float x);计算机基础与程序设计计算机基础与程序设计例如:例如:float value;float ol
24、dValue;float newValue;计算机基础与程序设计计算机基础与程序设计如如Value1,Value2等,除非逻辑上的确需要编号。等,除非逻辑上的确需要编号。 例如:例如:intminValue;intmaxValue;intSetValue();intGetValue();计算机基础与程序设计计算机基础与程序设计可以在定义变量时指定它的初值。可以在定义变量时指定它的初值。 float a = 3.14; float b = 3.14 * 2.3 * 2.3;也可以是表达式也可以是表达式float a;a = 3.14; 常规方式常规方式计算机基础与程序设计计算机基础与程序设计变量
25、未赋初值即使用,会有什么后果?变量未赋初值即使用,会有什么后果?int main ( ) int a; couta=aendl; return 0;各次运行情各次运行情况可能不同况可能不同原因是什么?原因是什么?计算机基础与程序设计计算机基础与程序设计 若变量未赋初值即使用,则该变量若变量未赋初值即使用,则该变量的初值是一个的初值是一个不可预测不可预测的值。的值。计算机基础与程序设计计算机基础与程序设计 内存单元由操作系统按字节编号,称为地址。内存单元由操作系统按字节编号,称为地址。 对象在内存中第一个字节的地址称为对象的地址。对象在内存中第一个字节的地址称为对象的地址。计算机基础与程序设计计
26、算机基础与程序设计0X0066FDEC变量变量a a的地址的地址变量变量b b的地址的地址int a ;double b ;由类型符由类型符double解释存储数据解释存储数据由类型符由类型符int解释解释存储数据存储数据计算机基础与程序设计计算机基础与程序设计取对象取对象b的地址:的地址:&b取址运算符取址运算符计算机基础与程序设计计算机基础与程序设计符号常量是以标识符形式出现的常量。符号常量是以标识符形式出现的常量。#include using namespace std;#define PRICE 30int main ( ) int num,total;num=10;total
27、=num * PRICE;couttotal=total = = !=逻辑运算符逻辑运算符! & |位运算符位运算符 | & 赋值运算符赋值运算符= 及扩展的复合运算符及扩展的复合运算符条件运算符条件运算符? :逗号运算符逗号运算符,指针运算符指针运算符* &求字节运算符求字节运算符sizeof强制类型转换符强制类型转换符(type)分量运算符分量运算符. -下标运算符下标运算符 其他其他( ) new delete计算机基础与程序设计计算机基础与程序设计运算符运算符名称名称举例举例说明说明+正值运算符正值运算符(正号正号)+b值不变值不变-负值运算符负值运算符(负号负
28、号)-d取相反数取相反数+加法运算符加法运算符a + 3加法加法-减法运算符减法运算符c - 4减法减法*乘法运算符乘法运算符a * 3乘法乘法/除法运算符除法运算符c / d除法除法%模运算符模运算符e % 4求余数、取模求余数、取模计算机基础与程序设计计算机基础与程序设计 用算术运算符和括号将运算对象连接起来的、用算术运算符和括号将运算对象连接起来的、符合符合C+语法规则的式子,称语法规则的式子,称C+算术表达式。算术表达式。运算对象包括常量、变量、函数等。运算对象包括常量、变量、函数等。a * b / c - 1.5 + a 计算机基础与程序设计计算机基础与程序设计C+语言规定了运算符的优先级和结合性。语言规定了运算符的优先级和结合性。 计算机基础与程序设计计算机基础与程序设计q直接舍去商的小数部分直接舍去商的小数部分q采取采取“向零取整向零取整” 两个整数相除,结果也为整数两个整数相除,结果也为整数 %运算符的两个操作数都必须是整数运算符的两个操作数都必须是整数 模运算有什么作用?模运算有什么作用?分解数字分解数字计算机基础与程序设计计算机基础与程序设计10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年下半年华侨大学招聘项目制人员19人考试模拟试题及答案解析
- 2026西安国医医院(西咸妇女儿童医院)招聘(82人)考试参考题库及答案解析
- 2026年湖南省张家界市公务员人员招聘考试模拟试题与答案详解
- 2026中国科学院上海研究院绿色化学工程技术研究与发展中心博士后研究人员招收2人笔试备考题库及答案解析
- 某造船厂船舶建造规范
- 2026务川自治县面向社会公开招聘编制外合同制乡村医生23人考试备考题库及答案解析
- 2026河南信阳市潢川县就业创业服务中心招聘2名全日制公益性岗位考试备考题库及答案解析
- 2026广西玉林市福绵区妇幼保健院公开招聘12人考试参考题库及答案解析
- 2026年仁果类和核果类水果种植行业市场现状分析报告及未来五至十年碳中和与循环经济
- 2026年株洲市天元区公务员人员招聘考试模拟试题与答案详解
- DB54∕T 0408-2024 羊肚菌菌种生产技术规程
- 彩钢瓦翻新施工合同范本
- 管道运输流程
- 生产工厂门卫管理制度
- 公文写作教学课件下载
- 机动车冷却液 第2部分:电动汽车冷却液(征求意见稿)编制说明
- 2025广州标准商铺租赁合同样本
- 奇妙的降落伞课件
- 国企纪检委员工作职责
- 医院中央运送服务方案(包括但不仅限于护送或陪检)
- 通信工程建设标准强制性条文汇编(2023版)-定额质监中心
评论
0/150
提交评论