C++程序设计教程课件_第1页
C++程序设计教程课件_第2页
C++程序设计教程课件_第3页
C++程序设计教程课件_第4页
C++程序设计教程课件_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章编程基础知识1.1计算机系统及工作原理1.2信息的存储与表示1.3程序设计语言1.4结构化程序设计1.5基本语法了解计算机软硬件系统及工作原理掌握信息表示和编码熟悉程序设计语言发展历史掌握程序基本结构和基本语法1.1计算机系统及工作原理1.1.1硬件系统1.1.3计算机工作原理1.1.2软件系统1.1计算机系统及工作原理1.1.1硬件系统P3

表1.11.1计算机系统及工作原理1.1.1硬件系统1.1计算机系统及工作原理1.1.2软件系统系统软件管理、控制和维护计算机系统资源的程序集合。例如:操作系统、各种语言处理程序和一些服务程序等。应用软件为完成某一特定的任务而编写的程序集合。例如:Office套件、标准函数库、计算机辅助设计软件、各种图形处理软件、财务软件等。1.1计算机系统及工作原理1.1.3计算机工作原理冯·诺依曼

约翰·冯·诺依曼(JohnvonNeumann),美籍匈牙利数学家、计算机科学家、物理学家,是20世纪最重要的数学家之一。存储程序控制计算机的数制采用二进制;计算机硬件由存储器、运算器、控制器、输入设备和输出设备五大部分组成;将程序(数据和指令序列)预先存放在主存储器中,使计算机在工作时能够自动高速地从存储器中取出指令,并加以执行。1.2信息的存储与表示1.2.1计算机信息表示及编码1.2.3非数值信息的表示1.2.2信息存储单位1.2.4信息的内部表示与外部显示1.2信息的存储与表示1.2.1计算机信息表示及编码二进制的优点易于物理实现运算简单可靠性高通用性强1.2信息的存储与表示1.2.1计算机信息表示及编码数制基数权值常用进制二进制:0、1十进制:0、1、2、3、4、5、6、7、8、9八进制:0、1、2、3、4、5、6、7十六进制:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F1.2信息的存储与表示1.2.1计算机信息表示及编码数制转换十进制数转换成R进制数整数部分:除基取余逆序排列

小数部分:乘基取整正序排列

1.2信息的存储与表示1.2.1计算机信息表示及编码数制转换R进制数转换成十进制数:按位权展开

1.2信息的存储与表示1.2.1计算机信息表示及编码数制转换二进制数、八进制数、十六进制数相互转换每位八进制数相当于3位二进制数,每位十六进制数相当于4位二进制数。1.2信息的存储与表示1.2.2信息存储单位信息存储单位位:bit(缩写为b),信息的最小单位。字节:Byte(缩写为B),信息的最基本单位,1B=8bits,1KB=1024B。字:作为一个整体单位进行处理的一组二进制编码。字长:每个字所包含的二进制位数。1.2信息的存储与表示1.2.3非数值信息的表示西文字符编码ASCII(AmericanStandardCodeforInformationInterchange,美国信息交换标准代码)1.2信息的存储与表示1.2.3非数值信息的表示中文信息编码国家标准信息交换用汉字编码(GB2312—1980):国标码国标码是二字节码,即用两个7位二进制数编码表示一个汉字。1.2信息的存储与表示1.2.4信息的内部表示与外部显示信息是多种多样的,如文字、数字、图像、声音及各种仪器输出的电信号等。各种各样的信息都可以在计算机内存储和处理,而计算机内表示它们的方法只有一种,就是基于符号0和1的数字化信息编码,不同的信息需要采用不同的编码方案。计算机的外部信息需要经过某种转换变为二进制编码信息后,才能被计算机主机所接收;同样,计算机内部信息也必须经过转换才能恢复“本来面目”。这种转换通常由计算机的输入/输出设备来实现,有时还需软件参与这种转换过程。1.3程序设计语言1.3.1机器语言1.3.3高级语言1.3.2汇编语言1.3.4常见的编程语言1.3程序设计语言1.3.1机器语言机器语言是计算机可以理解的唯一语言。这种语言包含特定计算机处理器的指令,这些指令以二进制编码表示。用机器语言编写的程序,计算机能够直接识别和执行,执行速度快,但是用机器语言编写程序非常麻烦和枯燥,并且难记忆、不通用。所以,大多数程序是使用其他的语言进行编写再转换为机器语言的。1.3程序设计语言1.3.2汇编语言在汇编语言中,所有的指令不采用二进制编码的形式,而是以英文单词(助记符)的形式出现。系统可以借助语言翻译器程序将这些单词转换为机器语言代码。使用汇编语言编写程序和机器语言一样,也要给出每个基本的指令,因此用汇编语言编写程序也是比较麻烦的。1.3程序设计语言1.3.3高级语言高级语言进一步简化了程序员编写程序所需的命令,类似自然语言和数学语言。与机器语言不同的是,程序员不用过多地考虑该程序将在什么样的内部设计的机器上使用,即程序具有通用性。但是,高级语言必须遵循一定的规则将程序准确地翻译为机器语言,任何一种高级语言都有和其对应的编译程序。过程化语言函数式语言声明式语言面向对象语言(P11

表1.2)1.3程序设计语言1.3.4常见的编程语言C/C++C#JavaPython1.4结构化程序设计1.4.1算法1.4.3程序基本结构1.4.2数据结构1.4结构化程序设计1.4.1算法算法是为解决一个问题而采取的方法和步骤。组成算法的规则和每一个步骤都应当是确定的,而不是含糊、模棱两可的。由这些规则指定的操作是有序的,必须按指定的操作顺序执行,而这些操作步骤是有限的,并能得到正确的结果。算法的表示方法有很多种,常用的有自然语言、流程图、伪代码等。1.4结构化程序设计1.4.2数据结构数据是程序的必要组成部分,也是程序处理的对象。数据类型是对程序所处理数据的一种“抽象”,通过类型名对数据赋予一些约束,以便进行高效处理和词法检查。这些约束包括取值范围、存储空间大小和运算方式。1.4结构化程序设计1.4.2数据结构1.4结构化程序设计1.4.3程序基本结构1.5基本语法1.5.1常量和变量1.5.3算术运算符和算术表达式1.5.2赋值运算符和赋值表达式1.5.4其他运算符和表达式1.5基本语法1.5.1常量和变量常量整型常量:十进制、八进制、十六进制实型常量:小数形式、指数形式字符常量:ASCII字符、转义字符字符串常量:"China"符号常量:#definePI3.141.5基本语法1.5.1常量和变量变量命名规则:标识符只能使用英文字母、数字和下划线,而且必须以字母或下划线开头,且不能与系统保留字重复。注意:大小写敏感。整型变量:int实型变量:float、double字符变量:char(P14

表1.3)1.5基本语法1.5.2赋值运算符和赋值表达式#include<iostream>usingnamespacestd;intmain(){inta,b;a=5;b=4;//--------------b=a+b;return0;}1.5基本语法1.5.3算术运算符和算术表达式算术运算符+(加法运算符或正值运算符,如8+5、+4)-(减法运算符或负值运算符,如8-4、-3)例:交换变量a和b的值#include<iostream>usingnamespacestd;intmain(){ inta=1,b=5;

return0;}例:交换变量a和b的值#include<iostream>usingnamespacestd;intmain(){ inta=1,b=5,c; c=a; a=b; b=c; return0;}a=a+b;b=a-b;a=a-b;1.5基本语法1.5.3算术运算符和算术表达式算术运算符*(乘法运算符,如8*3)

/(除法运算符,如8/3)

%(求余运算符,如9%4)例:分离数字#include<iostream>usingnamespacestd;intmain(){ inta=1234,q,b,s,g; return0;}g=a%10;s=a/10%10;b=a/100%10;q=a/1000;1.5基本语法1.5.3算术运算符和算术表达式算术表达式用算术运算符和括号将运算对象连接起来的表达式,如:a*a-2*a*b*cos(alf),(a+b)/(c+v),b*b-4*a*c,a+b/1.5+'a'优先次序:括号>函数>*、/、%>+、-类型转换1.5基本语法1.5.3算术运算符和算术表达式算术表达式强制类型转换:将表达式转换成指定类型,格式:(类型名)(表达式)#include<iostream>usingnamespacestd;intmain(){doublea=102.6;intc=1,d;charb='a';d=(int)a*c+b;return0;}1.5基本语法1.5.3算术运算符和算术表达式复合赋值运算将算术运算符与赋值运算符联合起来构成复合赋值运算符。1.5基本语法1.5.4其他运算符和表达式自加/自减运算符自加(++)、自减(--)运算符,使变量的值增1或减1++i、--i:先使变量i的值加(减)1,再

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论