编程语言基础-语言 第2章 基本数据类型与简单程序设计

合集下载

电大C语言程序设计 第2章 基本数据类型和表达式

电大C语言程序设计 第2章 基本数据类型和表达式

第2章 基本数据类型和表达式 章 2.2.3 枚举常量
枚举常量是枚举类型中的值,即枚举值。 枚举常量是枚举类型中的值,即枚举值。 枚举类型定义: 枚举类型定义: enum <枚举类型名 枚举类型名>{<枚举表 ; 枚举表>}; 枚举类型名 枚举表 (1)enum color{red,yellow,blue}; (2)enum day{Sun,Mon,Tues,Wed,Thur,Fri,Sat};
第2章 基本数据类型和表达式 章 2.2.5 地址常量 指针类型的值域范围: 指针类型的值域范围:0~(232-1),每一个整数 , 代表内存空间中一个对应单元的存储地址。 代表内存空间中一个对应单元的存储地址。 用户可以直接使用整数0作为地址常量 作为地址常量, 用户可以直接使用整数 作为地址常量,称为 空地址常量,对应的符号号常量在stdio.h中定义,其值为整数 。 中定义, 号常量在 中定义 其值为整数0。
第2章 基本数据类型和表达式 章 2.3 变量 变量是用标识符表示的、 变量是用标识符表示的、其值可以被改变的 量。 1.变量定义语句 变量定义语句 <类型关键字 <变量名 [=<初值表达式 类型关键字> 变量名> 初值表达式>],…; 类型关键字 变量名 初值表达式
第2章 基本数据类型和表达式 章 2.3 变量 2.语句格式举例 语句格式举例 (1)int a,b; (2)char ch1=‘a’,ch2=‘A’; (3)int x=a+2*b; (4)double d1,d2=0.0,d3=3.14159; 3.语句应用举例 见circle.c 语句应用举例
第2章 基本数据类型和表达式 章 2.2.3 枚举常量
(1)enum color c1,c2,c3; (2)enum day today,workday; (3)c1=red; (4)workday=Wed; enum day {Sun=7,Mon=1,Tues,Wed,Thur,Fri,Sat};

C语言程序设计 第2章 数据类型

C语言程序设计 第2章 数据类型

2.2常量和变量 变量名与变量值的关系:
2.2常量和变量
变量的使用:先定义后使用
变量定义的一般形式:
数据类型 变量名1,变量名2,…,变量名n;
2.2常量和变量
➢ 凡未被事先定义的,系统不把它认作变量名,这就 能保证程序中变量名使用的正确
例:varname,在使用的时候误写成vaname
➢ 在定义变量时要指定变量的类型,在编译时就能为 变量分配相应的存储单元
5
2.2常量和变量
甘草 三七 干姜 葛根
枸杞 人参 陈皮 地黄
山药 当归 谷芽 黄连
贴上标签 加以区分
用标识符给变量起名字
2.2常量和变量 变量命名规则
➢ 只能由字母(a~z,A~Z)、数字(0~9)和下划线(_)构 成
➢ 第一个字符不能为数字 ➢ 不能与关键字同名
例:a9,_a, A_num √ 9a, a*num,int ×
控制语句:控制语句用于控制程序的流程。 C语言提供三类控制语句: ➢ 选择语句 ➢ 循环语句 ➢ 转移语句。 控制语句会在第三章和第四章详细介绍。
2.7 表达式与语句
复合语句: 复合语句由一对大括号括起来的一 条或多条语句组成。 例:{
turnOn(0,3); turnOn(0,4); turnOn(0,5); turnOn(1,4); }
2.7 表达式与语句
表达式语句:表达式末尾加上“;”就构成一条 表达式语句。 例:
s = 3.14 * r * r; 就是一条赋值表达式语句。表达式语句最后的 分号是语句中必不可少的一部分。
2.7 表达式与语句
函数调用语句:函数调用语句由函数调用加分 号构成。 例:
turnOn(1,1);

第2章 C#编程语言基础

第2章 C#编程语言基础
8
C#
第 章
2.2 C#数据类型
C#语言的类型如图
2 C# 编 程 语 言 基 础
9
第 章
2.2.1 值类型
1.简单类型(Simple Type)
类型 byte sbyte short ushort int uint long 长度 1 1 2 2 4 4 8 .NET类型 byte sbyte int16 uint16 int32 uint32 int64 说明 8位无符号整型 8位有符号整型 16位有符号整型 16位无符号整型 32位有符号整型 32位无符号整型 64位有符号整型 0~255 -128~127 -32768~32767 0~65535 –2147483648~2147483647 0~4294967295 –9223372036854775808~ 9223372036854775807 0~18446744073709551615 范围和精度
13
2 C# 编 程 语 言 基 础
第 章
2.2.2 引用类型
引用类型是将数据保存在堆上的存储方式。当 将一个数据给引用类型时,它被保存在堆上的 变量中。引用类型的大小不固定,为了可以快 速地搜索引用类型数据的值,通过将其地址保 存在堆栈上,可以通过地址找到真正数据的所 在。引用类型很抽象,就像一个门牌号,可以 根据门牌号找到所在的房子。
2 C# 编 程 语 言 基 础
11
第 章
3.结构类型
结构类型也是先声明后使用。声明结构类型时要使用 struct关键字,声明结构类型的一般语法格式如下: struct 标识符 { 结构成员定义; } 说明: (1)struct关键字表示声明的是一种结构类型。 (2)标识符必须是C#合法的标识符,它用来在程序 中唯一确定所定义的结构。 (3)由一对花括号括起来的部分称为结构体,它定义 了结构中所包含的各种成员。

第2章基本数据类型

第2章基本数据类型

例2-2 如有unsigned short j; scanf("%lu", &j);,则当用户输 入-1时,变量j的值是多少?

变量j是无符号短整型,取值只能是非负数, 当用户输入-1时,会出错吗? 不会的!


整个处理过程与语句unsigned short j = -1; 的执行过程类似。 长度修饰符l对输入有何影响?
整型变量的输出值
2.1.3.3 验证程序中变量的实 际值是确定的

虽然printf函数在输出变量的值时不考虑变量 的类型,而仅仅根据格式字符来确定输出值; 理论上,变量的类型是确定的,变量的实际 值自然也是确定的;但能否编程“证明”变 量的实际值是确定的呢? 设一个short型变量i,它的存储状态为16个1, 那么它的实际值是-1还是65535呢?

思路二:变量i的值究竟是-1 还是65535?

由于两个整数相除的商通常只取整数部分, 故当除数为负数且不能整除时,模运算结果 的符号与被除数的符号相同。


如果变量i的值为65535,则i % -2的结果
为1;如果变量i的值为-1,则i % -2的结果
为-1
2.1.3.4 长度修饰符对输入的 影响

计算机中存储单元的编码特点不仅决定了C 语言数据类型的特点,而且也决定了计算机 的“计算”能力。计算机能算多大整数的和?
如果计算机用2个字节的存储单元存储整数?

整型

计算机中的整型存储单元用于存储整数,根 据编码长度和编码方式分类。 关键字int可用于定义整型变量,如int i;所示。


在TC中,int型变量i占两个字节,而在VC6.0 中,int型变量i用4个字节编码。 两个字节的二进制数最多可以表示(编码) 多少个整数?

《c语言程序设计基础》2基本数据类型及运算.ppt

《c语言程序设计基础》2基本数据类型及运算.ppt
3
2.1 数据类型
本节内容
2.1.1 标识符 2.1.2 常量与变量
2.1.3 整型 2.1.4 实型 2.1.5 字符型
4
本章要点 数据的描述规则 数据的操作规则
5
2.1 数据类型
❖ 圆的半径为5cm,计算圆的面积并输出
#include <stdio.h> void main() {
float r, area; r = 5; area = 3.14*r*r; printf ("%f \n", area); }
{
PRICE=40; /* 错误,不能给符号常量赋
int num, tot不al能; 对符号常量指定类型
num=10;
int PRICE; /* 错误,PRICE不是变量,不
total=num * PR能IC指E;定类型 */
printf(″total=%d\n″,total);
}
说符明号:常量程: 用序一中个用标#d识ef符in代e命表令一行个定常量义。PRICE
▪ 标识数据类型(14个):int、long、char、
float、double等
▪ 标识存储类型(5个):auto、static、 register等
▪ 标识流程控制(12个):goto、break、if、 else、continue等
▪ 标识运算符(1个):sizeof
11
2.1.1 标识符
❖2.1.1.2 预定义标识符 ❖总是以固定的形式用于专门的地方,例如标识库函
程序中的数据: r、area 5、3.14
对数据的运算: * 、=
6
2.1 数据类型
❖ 计算机在操作处理时,要完成以下工作: ❖在内存中要给半径 r 和面积 area 开辟存储空间,

C语言程序设计习题集第2章-(答案)基本数据类型及顺序结构程序设计

C语言程序设计习题集第2章-(答案)基本数据类型及顺序结构程序设计

word格式-可编辑-感谢下载支持第2章基本数据类型及顺序结构程序设计一、选择题1、以下关于long、int和short类型数据占用内存大小的叙述中正确的是(D)A)均占4个字节B)根据数据的大小来决定所占内存的字节数C)由用户自己定义D)由C语言编译系统决定2、以下选项中不合法的标识符是(C)A)print B)FOR C)&a D)_003、可在C程序中用作用户标识符的一组标识符是(A)A)and B)Date C)Hi D)case_2007 y-m-d Dr.Tom Big14、以下选项中不属于字符常量的是(B )A)'C' B)"C" C)'\xCC0' D)'\072'5、以下选项中,合法的一组C语言数值常量是(B)A)028 B)12. C).177 D) 0x8A.5e-3 0Xa23 4e1.5 10,000-0xf 4.5e0 0abc 3.e56、以下正确的字符串常量是(A)A) "\ \ \" B) ' abc ' C)Olympic Games D) ""7、下列定义变量的语句中错误的是(D)。

A)int _int;B)double int_; C)char For;D)float USS8、下列变量定义中合法的是(A)。

A) short _a=1.le-1;B) double b=1+5e2.5;C) long do=0xfdaL; D) float 2_and=1e-3;9、以下定义语句中正确的是(C)A)int a=b=0 ; B)char A=65+1,b='b';C)float a=1,*b=&a,*c=&b ; D)double a=0.0,b=1.1;10、设有说明语句:char a=’\72’;则变量a(A)。

第2章——Visual Basic语言基础

第2章——Visual Basic语言基础
3)系统常量
系统常量是指VB已预先定义好的用户可直接使用的符号常量,它们存放在系统的对象库中。例如:要将标签Label1的背景颜色设置为绿色,可以使用下面语句:Label1.backColor=vbGreen,这里当中的vbGreen就是系统常量,表示绿色。
4)变量及其命名规则
在程序执行过程中,其值可以发生变化的量称为变量。变量的值存放在存储单元中,允许动态更新。程序中每一个变量都要一个名称,即为变量名。
②变量名需要遵守变量的命名规则。
③类型用来定义被声明的变量的数据类型或对象类型,可以是标准类型或用户自定义类型。省略As<类型>子句时,被声明的变量为可变类型。
2、隐式声明:可以不定义变量,而在需要时直接给出变量名,变量的类型可以用类型标识符来标识。
隐式声明比较方便,并能节省代码,但是可能带来麻烦,使程序出现无法预料的结果,而且较难查出错误。
说明:
(1)字符串中包含的字符个数称为字符串长度。在VB中,一个汉字占一个字符长度。长度为0(不包含任何字符的字符串)的字符串称为空字符串。
(2)双引号在程序代码中起字符串的界定作用。输出字符串时。不显示双引号:从键盘上输入字符串时,也不需要输入双引号。
(3)在字符串常量中,字母的大小写是有区别的。例如:“baby”和“BABY”是两个不同的字符串常量。
注:在单精度数末尾可以加上类型标识符!,如:4.7!,-82.73!。
(2)双精度数(Double),双精度数在内存中占用8个字节的存储空间,双精度数可以有15位有效数字。
双精度数也可以用定点形式或浮点形式。双精度数的定点形式,如:32.4578965,0.65762345。双精度数的浮点形式用科学计数法,用字母“D”(或“d“)表示底数10,如:3.4d8(3.4*108)。

C语言程序设计第2章-1数据类型、运算符和表达式

C语言程序设计第2章-1数据类型、运算符和表达式
1、按运算符的功能分成:算术运算符、关系运算符、逻辑运算 符、赋值运算符、位运算符、条件(tiáojiàn)运算符、自增和自减 运算符、逗号运算符、指针运算符、强制类型转换运算符、 分量运算符、下标运算符、求字节数运算符、函数调用运算 符等等。
2、 C 语言的运算符的优先级与结合性
3、表达式:由操作数和运算符组成的序列。
5
精品文档
⒉ 真值: 带符号位的机器数对应的数值称为机器数的真值。 (10100011)2= -35
⒊ 无符号数:当计算机字长的所有二进位都用来表示(biǎoshì)数值时,称 为无符号数。
2.2.2 原码、反码和补码
⒈ 原码
整数 X 的原码指:其数符位 0 表示正,1 表示负,其数值部分
就是 X 的绝对值的二进制表示。
2.1 常用 的进位制 (chánɡ yònɡ)
2.1.1 二进制、八进制和十六进制(shíliùjìn zhì)数
3
精品文档
2.1.2十、二进制、八进制和十六进制数之间的换算
⒈ 二、八、十六进制数 → 十进制数的换算采用按权展开法。
(2AB.F)16 = 2χ162+10χ161+11χ160+15χ16-1 = 683.93 ⒉ 十进制数 → 二进制数的换算整数部分(bù fen)采用除以二取余直到商
19
精品文档
2.5.1 算术运算符与算术表达式
⒈ 基本的算术运算符:
14
精品文档
3.字符常量
字符常量是用单撇号括起来的单个字符或转义字符,
如: ‘a’, ‘9’, ‘&’, ‘\n’, ‘\’’, ‘\101’。
字符常量的值为该字符的ASCII码值,如 ‘a’值为97, ‘\n’
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

出现在字母e(或E)之前的小数点,其左边
和右边应有一位数字
在字母e(或E)之后必须是整数。
1.34E1.2、.e2 均是非法的浮点数。
2.2.4 字符型数据
C的字符常量是用单引号(即撇号)括起来
的一个字符。 如 '*'、'a'、'A'、'&'、'!' 等都是字符常量。 注意,'a' 和 'A' 是不同的字符常量。
2.4.2 格式化输出函数printf( )
格式化输出函数是按指定的格式完成输出过程。
一般使用形式如下: printf("输出格式串", 表达式表 ); 其中,输出格式串包含“格式符”或非格式符。
“格式符”以%开头后面跟一个字母。
格式符见表2-4。
格式符 %c %d %o %x %f %m.nf 按字符形式输出 按十进制整数形式输出 按八进制整数形式输出 功能说明
下面是不合法的标识符: ab /* 标识符不能含空格符 */ 1a /* 标识符不能以数字打头 */ #abc /* 标识符不能使用# */ xyz-1 /* 标识符不要把减号“-”和下划线“_”混 淆 */
注意:大写字符和小写字符被认为是两个不
同的字符。 如: a1和A1是两个不同的变量。
例如: a =100; b =200; printf("%d + %d = %d \n", a, b, a + b ); 输出结果为: 100 +200 =300(换行)
例2-8
#include <stdio.h> main( ) { float x1 = 123.5678, x2 = -4567.789; printf("x1 = %f, x2 = %f \n", x1, x2 ); printf("x1 = %8.2f \t x2 = %8.2f \n", x1, x2 ); getch( ); /* 按任意键 */ printf("%c%3c \n", '*', '*' ); printf("%d%3d \n", 11, 22 ); }
然后将结果值送给赋值号“=”左边的变量。 例如: g = 9.8; g = 10 + 20 - 9;
“=”不是等号,而是赋值号。
例2-1
char c1, c2; c1 = 'a'; c2 = 'b'; 上面定义了2个字符型变量 c1, c2,一个字符型 变量可存放一个字符。 将一个字符常量存放到一个字符变量中,实际 上并不是把该字符本身放到内存中,而是将该字符 的相应的ASCII码存放内存单元中。 C语言字符型数据与整型数据之间可以通用。
2.2.3 浮点型常量
C语言中的浮点类型主要分为单精度和双精
度浮点型两种。
以下是合法的十进制浮点数表示: 1234.56、-1.2、0.0、 .5、6.、1000000000.0。
浮点数还可采用科学表示法,以下是合法的
科学浮点数表示: 1.23456e2、 0.345E-3、-765e12、-.5E-8、 6.e-7、1.0e10。
2.3 赋值语句
所谓赋值,就是将一个数据存入一个连 续的具有若干存储单元的存储空间中,该存 储空间有一个名字,就是前面介绍的变量名。
对一个变量进行定义后,这个变量如果没 有进行赋值,它的值是不确定的。
2.3.1 赋值语句的格式与功能
一般形式:
变量 = 表达式;
功能: 首先计算赋值号“=”右边表达式的值,
例2-2
#include <stdio.h> main( ) {
运行结果: a, a, 97 97, a
char c1 = 'a', c2; int k; k = c1; /* 将字符型变量c1赋给整型变量k */ c2 = 97; /* 将整数97赋给字符型变量c2 */ printf("%c, %c, %d", c1, c2, c1); /* 字符变量既可按字符形式输出,亦可按整型输出 */ printf("\n %d, %c", k, k ); /* 整型变量既可按整型形式输出,亦可按字符型输出 */ getch(); }
2.2 常量和变量
2.2.1 常量和符号常量 在程序的运行过程中,其值保持不变的量称 为常量。 #define PI 3.1415926 此后,凡在文件中出现的PI均可用 3.1415926来代替。
2.2.2 整型常量
除了我们比较熟悉的整型常量如: 100、0、 -256之外, C语言中还有其他形式的整型常量。
字符数据存放在内存时,并不是字符本身,
而是字符的代码,称之为ASCII码。
部分字符对应的ASCII码
字符 ASCI I码 回车 空格 * + 0 1 2 3
48
49
50
51
……
57
字符 ASCI I码
A
B
C
……
Z
a
b
c
……
z
65
66
67
……
90
97
98
99
……
122
常用的转义字符有:
2.4 数据的输出
2.4.1 字符输出函数 putchar( )
函数putchar( ) 的功能是把一字节的代码值所
代表的字符输出到显示器上。
常用格式如下:
putchar( c ); 其中参数 C 可以是字符常量、变量或字符表 达式。
例2-5 字符输出函数putchar( )的功能
#include <stdio.h> main( ) { char c ='A'; putchar( c ); /* 输出字符A */ putchar('\n'); /* 输出换行符 */ putchar('#'); /* 输出字符# */ getch( ); }
变量和符号常量的不同之处在于:变量的值
可以改变,而符号常量则不行。
例2-1
int i, j, k; char c1, c2; 上面两行语句定义了3个int型变量i, j, k和 2个字符型变量c1、c2
例2-2
float x1, x2; /* 定义2个单精度浮点型变量 */ double z1, z2; /* 定义2个双精度变量*/ float x; double y; x = 123456.789; /* 给变量赋初值 */ y = 1.23456789E5;
2.3.2 赋值语句中的类型转换
“=”左边变量与右边表达式的数据类型不一致时, C编译系统会自动实现数据类型的转换。 转换的原则是,将赋值号右边的表达式值的类型转 换成与左边变量相同的类型后再赋值。
例如: int a; long b; char c; a = b; /* long型变量b的值变换成int型后再赋给a */ b = a; /* int型变量a的值变换成long型后再赋给b */ b = a + c; /* int型a + c的值变换成 long型后再赋给 b */
例2-3 将小写字母转换成大写字母。
#include <stdio.h> 运行结果: main( ) a, A { char c1,c2; int i, j; c1 = 'a'; c2 = c1-32; /* c2 = 'A' */ printf("%c, %c", c1, c2 ); getch(); }
运行结果为 x1 = 123.567802, x2 = -4567.789062 x1= 123.57 x2 = -4567.79 (按任意键后显示) * * 11 22
2.5 数据的输入
数据的输入,一般是以键盘为处理对象 的,从键盘接受字符和数据。 字符输入函数getchar( ) 和输出函数 putchar( ),是以一个字节的字符代码为单位 来完成输入输出过程的。在程序中使用这两 个函数时,要求在程序开头包含头文件 stdio.h。即 #include <stdio.h>
-0X23等于十进制数 -35。
任何类型的数据在计算机中都是以二进制补
码形式存储的。 正数的补码等于其原码,而负数的补码等于 其原码的反码+1。
例如: 0000 0000 0101 0011 表示 1111 1111 1010 1101 表示
83 -83
0000 0000 0000 0000 0000 0000 0101 0011 表示 83L 1111 1111 1111 1111 1111 1111 1010 1101 表示 -83L
如果在short或char类型标识符前面加上关键字 unsigned,则表示无符号类型,其值为非负整数
类型标识符 名 称 字节数 1 2 4 范 围 0~255 0~65535 0~ 4294967295
unsigned char 无符号字符型 unsigned short 无符号短整型 unsigned int或 无符号长整型 unsigned long
‘\n’ ‘\t’ ‘\b’ ‘\r’ ‘\f’ ‘\\’ ‘\’’ ‘\”’ 换行符 (将当前位置移到下一行开头) 水平制表符 (跳到下一个<tab>位置) 退格 回车 (将当前位置移到本行开头) 走纸 反斜杠’\’ 单引号’ 双引号
转义字符看起来是两个字符,实际上只能算一个字符。
也可以使用 "\" 加上一个1~3位的8进制 数或 "\x" 加上一个1~2位的16进制数表示的 ASCII码值来表示转义字符,例如: ‘\0’ 表示 空字符 '\33' 或 '\033' 表示ESC(27) '\07' 表示响铃 '\x0A' 表示换行(10)。
相关文档
最新文档