C++语言学习第二章
C语言第2章(谭浩强)

§ 2.4
怎样表示一个算法
表示方法: 1、自然语言 2、传统流程图 3、N—S流程图 4、结构化流程图 5、伪代码 、PAD图
10
2.4.1 用自然语言表示算法
用自然语言表示通俗易懂,但容易出现 “歧异性”。
2.4.2 用传统流程图表示算法
直观形象,易于理解。成为世界各国程序 工作者普遍采用。 下面给出传统流程图的说明:
2
§2.1
算法的概念
做任何事情都有一定的步骤,这些步骤都 是有一定的顺序。如:起床上学,用电脑画画, 弹奏乐曲。不要以为只有“计算”的问题才有 算法的。
什么叫做算法?广义:为解决一个问题而采 用的方法和步骤就称为“算法”。
例如:求 1+2+3+4+……+100 可先算1+2、再加3、再加4……直到加上100; 也可采用 100+(1+99)+(2+98)+……+ (49+51)+50 3 本书所关心的算法只限于计算机算法。
5
例2.2 有50个学生,将成绩在80分以上的学 号和成绩打印出来。 说明:n:学号,ni:第i个学生学号,g:成绩, gi:第i个学生成绩 步骤如下: S1:1=>i S2:若gi>80,则输出ni和 gi ,否则不输出。 S3:i+1=>i S4:若i小于等于50,则返回 S2继续执行; 否则算法结束。
著名计算机科学家沃思提出一个公式: 数据结构+算法=程序 实际上,一个程序还应当采用结构化程序设计 方法进行程序设计,并且用某一种计算机语言表示。 因此,可以这样表示。 程序=算法+数据结构+程序设计方法+语言 以上四个方面是一名程序设计员所应具备的知 识。在这四个方面中,算法是灵魂,是解决“做什 么”和“怎么做”的问题。数据结构是加工对象, 语言是工具,编程需要采用合适的方法。
最新C语言第2章

2020/10/15
16
算法表示如下: S1:输入n的值
S2:2 i ( i 作为除数)
S3: n 被 i 除,得余数 r S4: 如果 r 等于 0 , 表示 n 能 被 i 整除,则打印 n “不 是素数”,算法结束;否则执行S5
S5:i+1 i
S6: 如果 i n-1, 返回S3;否则,打印 n “是素 数”,算法结束。
C语言第2章
实际上,一个程序除了以上两个主要要素之外,还应当采用 结构化程序设计方法进行程序设计,并且用某一种计算机语 言表示。因此,可以这样表示:
程序=算法+数据结构+程序设计方法+语言工具和环境
在这4个方面中,算法是灵魂,数据结构是加工对象,语言 是工具,编程需要采用合适的算法。算法是解决“做什么” 和“怎么做”的问题。
2020/10/15
2
1、什么叫算法? 解决一个问题而采取的方法和步骤,就称为算法。
2、算法的特性 (1) 有穷性
一个算法应包含有限的操作步骤而不是无限的。
(2) 确定性 算法中的每一个步骤都应当是确定的,而不应当是 含糊的,模棱两可的。
2020/10/15
3
(3)有零个或多个输入 所谓输入是指在执行算法时需要从外界取得必要 的信息。
1=>i
gi≥80
是
否
输出ni,gi
i+1=>i
直到i>50
2020/10/15
11
4、用伪码表示算法 伪代码是用介于自然语言和计算机语言之间的文字和符号来 描述算法。它不用图形符号,因此书写方便,格式紧凑,也 比较好懂,便于向计算机语言算法(即程序)过渡。
例 有50个学生,要求将他们之中成绩在80分以上者打印出来。
C语言基础知识第二章概述

2019/3/14
C语言程序设计教程
第2章 C语言的基本数据类型与表达式
12
例如:字符A的ASCII码为: 65D(十进制)=41H(十六进制)=101Q(八 进制) ∴字符A可以表示为‘A’、’\x41’、’\101’。 2、分类: char 和 unsigned char; 3、值域: 每个字符型数据在内存中占一个字节;包括 ASCII字符表中的所有字符(可显示字符和非显 示字符)。
– 例如: 某计算机允许表示具有七位有效数字的十进制数,计算 333.3333+0.0002222222,若计算时没有位数的限制,则结果应当 是3.3335222222。 计算机由于字长位数的限制,只能表示七位有 效数字,于是只得将小数点后的七个数字全部删掉,而仅保留其 整数部分,得到和值333.3335。 (4)根据实际要求选择单精度或双精度。
2019/3/14
C语言程序设计教程
13
• 注意: • • • • (1)字符常量只能用单引号括起来,不能用双引号 或其他括号。 (2)字符常量只能是单个字符, 不能是字符串。 ‘ab’ 不是字符常量 (3)字符可以是字符集中任意字符,但数字被定义为 字符型之后就以ASCII码值参与数值运算。 如,‘6’和6是不同的,‘6’是字符常量,而6是整型 常量。
注意
‘a’与“a”的区别。
2019/3/14
C语言程序设计教程
15
• 字符常量与字符串常量的区别:
– ⑴ 定界符不同。 – 字符常量使用单引号,而字符串常量使用双引号。 – ⑵ 长度不同。 – 字符常量的长度固定为1,而字符串常量的长度可以是0,也可以 是某个整数。 – ⑶ 存储要求不同。 – 字符常量存储的是字符的ASCII码值,而字符串常量除了要存储 字符串常量的有效字符外,还要存储一个字符串结束标志‘\0’。
C语言程序设计教程第2章程序流程

流程图
算法
确定
程序结构
变量类型
程序语句
(7)调试
调试
C语言程序设计
第二章 程序设计和程序结构
良好的程序编写风格会大大缩 短调试过程,附录4介绍了C语言程 序的一般书写风格,附录11介绍了 一些常见的错误。
C语言程序设计
第二章 程序设计和程序结构
2.1.2 算法
在实际的编程过程中要注意:
1、避免拿起题目就开始写程序的 2、应该先设计出合适的算法
第二章 程序设计和程序结构
本章概述
2.3程序结构 2.1程序设计与算法 2.4流程图及程序例子 2.2流程图
C语言程序设计
第二章 程序设计和程序结构
本章概述
• 本章主要介绍了C语言的程序结构、 流程图的绘制和程序设计的过程。 • 学习目标: • 1、理解程序的开发、设计过程 • 2、掌握C语言程序结构
C语言程序设计
第二章 程序设计和程序结构
其中最后一行的“Press any key to
continue”是VC6.0自动添加在每个
程序运行结果后面的一句提示信息,它
表示当程序执行结束时,操作者可以按
任意键返回到编辑界面。在后面的程序 运行结果中,将不再给出这一信息。
C语言程序设计
第二章 程序设计和程序结构
scanf("%d",&num1);
printf("Input the 2nd integer number: "); scanf("%d",&num2); sum=num1+num2; printf("sum=%d\n",sum); }
C语言程序设计
C语言学习第二章数据类型

基本整型:表示的范围为0X0~0XFFFF。
2.4.2 整型变量
1.整型变量在内存中的存放形式
以二进制补码的形式存放。
正数:最高位为0,其余各位是该数的二进制表示 负数:最高位为1,其余各位是该数绝对值的二进制
再按位取反加1
2. 整型变量的分类
放一个字符。
下面是对c1、c2赋值: c1=‘a’;c2=‘b’; (实际上其内存中存放的是该字符的ASCII码)
字符变量的初始化,如:char c1=‘a’,c2=‘b’;
2.5.3 字符数据在内存中的存储形式及其使用方法
将一个字符常量放到一个字符变量中,实际上是将该字 符的ASCII代码以二进制形式放到存储单元中。
无符号型:(只能存放0和正整数) ① 基本整型:类型说明符为unsigned int或unsigned
在内存中占2个字节 取值范围为0~2161,即0~65535。 ② 短整型:类型说明符为unsigned short (int) 所占字节和取值范围均同基本整型。 ③ 长整型:类型说明符为unsigned long (int) 在内存中占4个字节 其取值范围是0~2321 即0~4294967295
实型常量也称为实数或者浮点数。 实型常量不分单、双精度,都按双精度double型处理,其有 效位数为(15~)16位。
实型常量的表示方式有:
(1)十进制小数形式
小数形式由数字0~ 9和小数点组成。
当某浮点数整数部分或小数部分为0时,0可以省略,但小 数点不可省略。
例如:
0.0 , .25 ,5.789 ,0.13 ,5.0 , 300. 267.8230 , 123. 等均为合法的实数。
C语言第2章讲义

第 二 章 程 序 设 计 基 础
C 语 言 程 序 设 计 教 程 第 二 版
C语言的特点
简洁紧凑、 简洁紧凑、灵活方便 运算符丰富 C语言一共只有 多个关键字,9 语言一共只有30 数据结构丰富 30多个关键字,9种控制语句,程序书写 C的运算符包含的范围很广泛,共有种34个运算符。C 的运算符包含的范围很广泛,共有种34个运算符。C 自由,主要用小写字母表示。它把高级语言的基本结构 C是结构式语言 语言把括号、赋值、强制类型转换等都作为运算符处理。 和语句与低级语言的实用性结合起来。C 和语句与低级语言的实用性结合起来。C语言可以象汇 C的数据类型有:整型、实型、字符型、数组类型、 语法限制不太严格、 C语法限制不太严格、程序设计自由度大 结构式语言的显著特点是代码及数据的分隔化,即程 从而使C 从而使C的运算类型极其丰富表达式类型多样化,灵活 编语言一样对位、字节和地址进行操作,而这三者是计 指针类型、结构体类型、联合体类型等。能用来实现各 语言允许直接访问物理地址, C语言允许直接访问物理地址,可以直接对硬件进行操作 序的各个部分除了必要的信息交流外彼此独立。这种结 使用各种运算符可以实现在其它高级语言中难以实现的 一般的高级语言语法检查比较严,能够检查出几乎所 算机最基本的工作单元。 种复杂的数据类型的运算。并引入了指针概念,使程序 语言程序生成代码质量高, C语言程序生成代码质量高,程序执行效率高 C语言既具有高级语言的功能,又具有低级语言的许 构化方式可使程序层次清晰,便于使用、维护以及调试。 运算(具体见后面的章节)。 有的语法错误。而C 有的语法错误。而C语言允许程序编写者有较大的自由 效率更高。另外C 效率更高。另外C语言具有强大的图形功能,支持多种 C语言适用范围大,可移植性好 多功能,能够象汇编语言一样对位、字节和地址进行操 C语言适用范围大, 语言是以函数形式提供给用户的,这些函数可方便的 度。 显示器和驱动器。且计算功能、逻辑判断功能强大。 具有预处理功能 作,而这三者是计算机最基本的工作单元,可以用来写 调用,并具有多种循环、条件语句控制程序流向,从而 一般只比汇编程序生成的目标代码效率低10~20%。 一般只比汇编程序生成的目标代码效率低10~20%。 C语言有一个突出的优点就是适合于多种操作系统, 具有递归功能 系统软件。 使程序完全结构化。 。也适用于多种机型,在一种计 如DOS、WINDOWS、UNIX DOS、WINDOWS、UNIX。也适用于多种机型,在一种计 算机上编写的程序,无须修改或经过很少的修改,就可 C语言提供了预处理器,程序可以利用宏指令提高可 以在其它类型的计算机上运行。 读性和可移植性。 C语言允许递归调用,在解决递归问题上具有独特优 势。
c语言第二章试题库及答案详解

c语言第二章试题库及答案详解C语言作为一门经典的编程语言,其试题库及答案详解对于学习者来说至关重要。
以下是C语言第二章的试题库及答案详解,内容涵盖了基本的C语言概念、数据类型、运算符和表达式等。
一、选择题1. 在C语言中,以下哪个是合法的整型常量?- A. 2023- B. 0x1A3F- C. 2023.0- D. '2023'答案: A, B2. 以下哪个选项表示的是C语言中的浮点型常量?- A. 3.14159- B. 2.5e2- C. 0.314E-2- D. All of the above答案: D3. 在C语言中,哪个运算符用于计算两个数的乘积?- A. +- B. -- C. *- D. /答案: C二、填空题1. 在C语言中,基本数据类型包括______、______、______和______。
- 答案:整型(int),字符型(char),浮点型(float),双精度型(double)2. 赋值语句的一般形式是______。
- 答案:变量名 = 表达式3. 表达式 `5 + (fl + 2) * 3 / 2` 的正确计算顺序是先计算______,然后是______,最后是______。
- 答案:括号内的表达式,乘除,加减三、简答题1. 请简述C语言中的变量声明和变量初始化的区别。
- 答案:变量声明是指告诉编译器变量的类型和名称,但不赋予其具体的值。
而变量初始化是在声明的同时赋予变量一个初始值。
2. 解释C语言中的运算符优先级及其对表达式求值的影响。
- 答案:运算符优先级决定了在没有括号的情况下,表达式中各个运算符的执行顺序。
例如,乘法和除法的优先级高于加法和减法,因此在没有括号的情况下,乘除运算会先于加减运算执行。
四、编程题1. 编写一个C语言程序,计算并输出1到10的整数之和。
```c#include <stdio.h>int main() {int sum = 0, i;for(i = 1; i <= 10; i++) {sum += i;}printf("The sum of integers from 1 to 10 is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现两个浮点数的加法,并输出结果。
《C语言》章节列表

第1章程序设计和C语言1第2章算法——程序的灵魂16第3章最简单的C程序设计——顺序程序设计第4章选择结构程序设计85第5章循环结构程序设计114第6章利用数组处理批量数据1426.1怎样定义和引用一维数组1426.1.1怎样定义一维数组1436.1.2怎样引用一维数组元素1446.1.3一维数组的初始化1456.1.4一维数组程序举例1466.2怎样定义和引用二维数组1486.2.1怎样定义二维数组1496.2.2怎样引用二维数组的元素1506.2.3二维数组的初始化1516.2.4二维数组程序举例1526.3字符数组1546.3.1怎样定义字符数组1546.3.2字符数组的初始化1556.3.3怎样引用字符数组中的元素1556.3.4字符串和字符串结束标志1566.3.5字符数组的输入输出1596.3.6使用字符串处理函数1616.3.7字符数组应用举例165习题168第7章用函数实现模块化程序设计1707.1为什么要用函数1707.2怎样定义函数1727.2.1为什么要定义函数1727.2.2定义函数的方法1737.3调用函数1747.3.1函数调用的形式1747.3.2函数调用时的数据传递1757.3.3函数调用的过程1777.3.4函数的返回值1787.4对被调用函数的声明和函数原型1797.5函数的嵌套调用1827.6函数的递归调用1847.7数组作为函数参数1927.7.1数组元素作函数实参1937.7.2数组名作函数参数1947.7.3多维数组名作函数参数1977.8局部变量和全局变量1997.8.1局部变量1997.8.2全局变量2007.9变量的存储方式和生存期2047.9.1动态存储方式与静态存储方式2047.9.2局部变量的存储类别2057.9.3全局变量的存储类别2087.9.4存储类别小结2127.10关于变量的声明和定义2147.11内部函数和外部函数2157.11.1内部函数2157.11.2外部函数215习题218第8章善于利用指针2208.1指针是什么2208.2指针变量2228.2.1使用指针变量的例子2228.2.2怎样定义指针变量2238.2.3怎样引用指针变量2248.2.4指针变量作为函数参数2268.3通过指针引用数组2308.3.1数组元素的指针2308.3.2在引用数组元素时指针的运算2318.3.3通过指针引用数组元素2338.3.4用数组名作函数参数2378.3.5通过指针引用多维数组2458.4通过指针引用字符串2558.4.1字符串的引用方式 2558.4.2字符指针作函数参数2598.4.3使用字符指针变量和字符数组的比较263 8.5指向函数的指针2668.5.1什么是函数指针2668.5.2用函数指针变量调用函数2668.5.3怎样定义和使用指向函数的指针变量268 8.5.4用指向函数的指针作函数参数2708.6返回指针值的函数2748.7指针数组和多重指针2778.7.1什么是指针数组 2778.7.2指向指针数据的指针2808.7.3指针数组作main函数的形参2828.8动态内存分配与指向它的指针变量2858.8.1什么是内存的动态分配2858.8.2怎样建立内存的动态分配2858.8.3void指针类型 2878.9有关指针的小结288习题291第9章用户自己建立数据类型2939.1定义和使用结构体变量2939.1.1自己建立结构体类型2939.1.2定义结构体类型变量 2959.1.3结构体变量的初始化和引用2979.2使用结构体数组3009.2.1定义结构体数组3009.2.2结构体数组的应用举例3019.3结构体指针3039.3.1指向结构体变量的指针3039.3.2指向结构体数组的指针3049.3.3用结构体变量和结构体变量的指针作函数参数306 9.4用指针处理链表3099.4.1什么是链表 3099.4.2建立简单的静态链表3109.4.3建立动态链表3119.4.4输出链表3159.5共用体类型3179.5.1什么是共用体类型3179.5.2引用共用体变量的方式3189.5.3共用体类型数据的特点3199.6使用枚举类型3239.7用typedef声明新类型名326习题330第10章对文件的输入输出33110.1C文件的有关基本知识33110.1.1什么是文件33110.1.2文件名33210.1.3文件的分类33210.1.4文件缓冲区33310.1.5文件类型指针33310.2打开与关闭文件33510.2.1用fopen函数打开数据文件33510.2.2用fclose函数关闭数据文件33710.3顺序读写数据文件33810.3.1怎样向文件读写字符33810.3.2怎样向文件读写一个字符串34110.3.3用格式化的方式读写文件34410.3.4用二进制方式向文件读写一组数据34510.4随机读写数据文件34910.4.1文件位置标记及其定位34910.4.2随机读写 35210.5文件读写的出错检测353习题354第11章常见错误分析355附录370附录A在Visual C++ 6.0环境下运行C程序的方法370附录B常用字符与ASCII代码对照表377附录CC语言中的关键字378附录D运算符和结合性378附录EC语言常用语法提要380附录FC库函数384参考文献390第4章选择结构程序设计854.1选择结构和条件判断854.2用if语句实现选择结构874.2.1用if语句处理选择结构举例874.2.2if语句的一般形式 894.3关系运算符和关系表达式914.3.1关系运算符及其优先次序914.3.2关系表达式924.4逻辑运算符和逻辑表达式924.4.1逻辑运算符及其优先次序934.4.2逻辑表达式944.4.3逻辑型变量964.5条件运算符和条件表达式974.6选择结构的嵌套1004.7用switch语句实现多分支选择结构1024.8选择结构程序综合举例106习题112第5章循环结构程序设计1155.1为什么需要循环控制1155.2用while语句实现循环1165.3用do…while语句实现循环1185.4用for 语句实现循环1215.5循环的嵌套1255.6几种循环的比较1265.7改变循环执行的状态1265.7.1用break语句提前终止循环1275.7.2用continue语句提前结束本次循环1285.7.3break语句和continue语句的区别1295.8循环程序举例132习题141第6章利用数组处理批量数据1436.1怎样定义和引用一维数组1436.1.1怎样定义一维数组1446.1.2怎样引用一维数组元素1456.1.3一维数组的初始化1466.1.4一维数组程序举例1476.2怎样定义和引用二维数组1496.2.1怎样定义二维数组1506.2.2怎样引用二维数组的元素1516.2.3二维数组的初始化1526.2.4二维数组程序举例1536.3字符数组1556.3.1怎样定义字符数组1556.3.2字符数组的初始化1566.3.3怎样引用字符数组中的元素156 6.3.4字符串和字符串结束标志1576.3.5字符数组的输入输出1606.3.6使用字符串处理函数1626.3.7字符数组应用举例166习题169第7章用函数实现模块化程序设计171 7.1为什么要用函数1717.2怎样定义函数1737.2.1为什么要定义函数1737.2.2定义函数的方法1747.3调用函数1757.3.1函数调用的形式1757.3.2函数调用时的数据传递1767.3.3函数调用的过程1787.3.4函数的返回值1797.4对被调用函数的声明和函数原型181 7.5函数的嵌套调用1837.6函数的递归调用1857.7数组作为函数参数1937.7.1数组元素作函数实参1937.7.2数组名作函数参数1957.7.3多维数组名作函数参数1987.8局部变量和全局变量2007.8.1局部变量2007.8.2全局变量2017.9变量的存储方式和生存期2057.9.1动态存储方式与静态存储方式205 7.9.2局部变量的存储类别2067.9.3全局变量的存储类别2097.9.4存储类别小结2137.10关于变量的声明和定义2157.11内部函数和外部函数2167.11.1内部函数2167.11.2外部函数216习题219第8章善于利用指针2218.1指针是什么2218.2指针变量2238.2.1使用指针变量的例子2238.2.2怎样定义指针变量2248.2.3怎样引用指针变量2258.2.4指针变量作为函数参数2278.3通过指针引用数组2328.3.1数组元素的指针2328.3.2在引用数组元素时指针的运算2338.3.3通过指针引用数组元素2348.3.4用数组名作函数参数2398.3.5通过指针引用多维数组2478.4通过指针引用字符串2578.4.1字符串的引用方式 2578.4.2字符指针作函数参数2618.4.3使用字符指针变量和字符数组的比较265 8.5指向函数的指针2688.5.1什么是函数指针2688.5.2用函数指针变量调用函数2688.5.3怎样定义和使用指向函数的指针变量270 8.5.4用指向函数的指针作函数参数2728.6返回指针值的函数2768.7指针数组和多重指针2798.7.1什么是指针数组 2798.7.2指向指针数据的指针2828.7.3指针数组作main函数的形参2848.8动态内存分配与指向它的指针变量2878.8.1什么是内存的动态分配2878.8.2怎样建立内存的动态分配2878.8.3void指针类型 2898.9有关指针的小结290习题293第9章用户自己建立数据类型2959.1定义和使用结构体变量2959.1.1自己建立结构体类型2959.1.2定义结构体类型变量 2979.1.3结构体变量的初始化和引用2999.2使用结构体数组3029.2.1定义结构体数组3029.2.2结构体数组的应用举例3049.3结构体指针3059.3.1指向结构体变量的指针3059.3.2指向结构体数组的指针3069.3.3用结构体变量和结构体变量的指针作函数参数3089.4用指针处理链表3119.4.1什么是链表 3119.4.2建立简单的静态链表3129.4.3建立动态链表3139.4.4输出链表3179.5共用体类型3199.5.1什么是共用体类型3199.5.2引用共用体变量的方式3209.5.3共用体类型数据的特点3219.6使用枚举类型3259.7用typedef声明新类型名328习题332第10章对文件的输入输出33310.1C文件的有关基本知识33310.1.1什么是文件33310.1.2文件名33410.1.3文件的分类33410.1.4文件缓冲区33510.1.5文件类型指针33510.2打开与关闭文件33710.2.1用fopen函数打开数据文件33710.2.2用fclose函数关闭数据文件33910.3顺序读写数据文件34010.3.1怎样向文件读写字符34010.3.2怎样向文件读写一个字符串34310.3.3用格式化的方式读写文件34610.3.4用二进制方式向文件读写一组数据34710.4随机读写数据文件35110.4.1文件位置标记及其定位35110.4.2随机读写 35410.5文件读写的出错检测355习题356第11章常见错误分析374附录390附录A在Visual C++ 6.0环境下运行C程序的方法390 附录CC语言中的关键字398附录D运算符和结合性398附录EC语言常用语法提要400附录FC库函数404参考文献410。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Program Organization
C++ program Collection of definitions, declarations and functions Collection can span multiple files physically A files containing C++ code is called a translation unit Advantages Structured into small understandable units Complexity is reduced Overall program size decreases
Comments
Allow prose or commentary to be included in program Importance Programs are read far more often than they are written Programs need to be understood so that they can be maintained C++ has two conventions for comments // single line comment (preferred) /* long comment */ (save for debugging) Typical uses Identify program and who wrote it Record when program was written Add descriptions of modifications A program should at least include 20% comments.
Z
5 1.28345 1 P
3.14
Integer Object Types
The basic integer object type is int An int is usually chosen to be the most efficient data type on the underlying hardware. The size of an int depends on the machine and the compiler On PCs it is normally 16 or 32 bits In Microsoft Visual C++ 2.0 and later it is 32 bits Other integers object types short: typically uses less bits long: typically uses more bits : sizeof(short) ≤ sizeof(int) ≤ sizeof(long) Signed and unsigned integer object type Signed integers are represented in two’s-complement form. The mostsignificant bit holds the sign: 1 for negative, 0 for positive and zero. Different types allow programmers to use resources more efficiently Standard arithmetic and relational operations are available for these types
Object
Object is a representation of some information Name Values or properties Data members Ability to react to requests (messages)!! Member functions When an object receives a message, one of two actions are performed Object is directed to perform an action Object changes one of its properties In C++ we usually say that a definition of the built-in data type (integer, float, double etc.) is object not variable. object,
A First Program – Hello world!
Preprocessor // Program: Display greetings directives // Author(s): Ima Programmer // Date: 1/24/2001 Comments #include <iostream> #include <string> Provides simple access using namespace std; Function int main() named { main() cout << "Hello world!" << endl; indicates return 0; start of } program Insertion Function Ends executions statement of main() whracter Object Types
Character type char is related to the integer types Characters are encoded using a scheme where an integer represents a particular character ASCII is the dominant encoding scheme Examples ' ' encoded as 32 '+' encoded as 43 'A' encoded as 65 'Z' encoded as 90 'a' encoded as 97 'z' encoded as 122 See appendix A for the complete ASCII character set We can always assume that ’a’ < ’b’ < ’c’ < ’A’ < ’B’ < ’C’ < ’0’ < ’1’ < ’2’ < the following relationships hold. … < ’z’ … < ’Z’ … < ’9’
Insertion Definitions Extraction
Definition with initialization
cout << "Area = " << Area << " = Length " << Length << " * Width " << Width << endl; return 0; }
Integer Constants
Integer constants are positive or negative whole numbers Integer constant forms Decimal Digits 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Octal (base 8) Digits 0, 1, 2, 3, 4, 5, 6, 7 Hexadecimal (base 16) Digits 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Examples L or l indicates long integer 234 31 102L 989L 056 031 077L 010L 0889 (illegal) 0x2A 0x45 0xffL 0xA1eL The range of represented number of integer object types: 16 bits integer: signed: –32768 ~ 32768 unsigned: 0 ~ 65535 32 bits integer: signed: –2147483647 ~ 2147483647 unsigned: 0 ~ 4294967295
Chapter 2 :
The Fundamentals of C++
Key Concepts:
function main() include comments definitions simple input and output integer, floating-point, and characters types integer, floating-point, and characters literals C++ names declarations expressions usual unary conversions usual binary conversions operator precedence operator associativity iostream insertion and extraction
Character Object Types
Arithmetic and relational operations are defined for characters types 'a' < 'b' is true '4' > '3' is true '6' <= '2' is false 'a'+1='b' Also in ASCII 'a'+1 = 'A'+1 = '2'+1 = '9'+1 = character encode set 'b' 'B' '3' ???