c语言实验常量与变量的作用,C语言中的常量与变量

§2.2 常量与变量

在程序中不同类型的数据可以以常量形式出现,也可以以变量形式出现。常量是指程序在执行期间值不能发生变化、具有固定值的量。变量则是在程序执行期间其值可以发生变化的量,实际上变量命名了内存中指定的存储单元。

2.2.1 直接常量和符号常量

直接常量就是日常所说的常数(常量)。直接常量从字面上就可以看出它们属于什么类型常量以及具体的值,因此又称为字面常量。符号常量则是在一个程序中指定的用名字代表的常量,从字面上不能直接看出其类型和值。

例2.4 分析下列程序运行结果。

#define PI 3.141592654

#define R 2.0

main( )

{

float c,s;

c=2*PI*R;

s=PI*R*R;

printf(“circumference=%f\n”,c);

printf(“area=%f\n”,s);

}

说明:命令行#define PI

3.141592654的作用是在预编译时将程序中凡出现PI的地方全部用3.141592654代替。符号常量的优点是使程序容易理解,可读性好且容易维护。

2.2.2 直接常量的书写格式

(1)整型常量:C语言中的整型常量可以使用十进制数、八进制数、十六进制数等几种形式书写。C语言规定:凡是以 0

开头的数字序列作为八进制处理;凡是以0x开头的数字序列作为十六进制处理;凡是非0且非0x开头的数字序列作为十进制处理;凡是在整型数后加小写字母l或大写字母L作为长整数处理。

注意:八进制数位的取值范围只能是0~7,十进制数位的取值范围只能是0~9,十六进制数位的取值范围是0~9和A~F(a~f)。

(2)实型常量:实型常量只能用十进制形式表示,不能用八进制数和十六进制数表示。实型常量可以用小数形式或指数形式表示。例如,3.5,5.0,-.5,7.,2e-5,2.4e3等都是合法的实数。

注意:小数形式表示实数时必须有小数点,小数点的前或后至少有一个出现数字序列。指数形式表示实数时必须有尾数部分和指数部分,指数部分只能是整数而不能是实数,尾数部分既可以用小数表示也可以用整数表示。实型常量不分单精度型和双精度型,但是可以赋给一个单精度型或双精度型变量。

(3)字符常量:用一对单撇号括起来的一个字符。例如,‘a’,‘A’,‘#’等是字符型常量,而‘ABC’不是字符型常量。

注意:一对单撇号只是字符与其它部分的分隔符,或者说是字符常量的定界符,不是字符常量的一部分,当输出一个字符常量时不输出此撇号。

(4)转义字符:C语言中对一些特殊的字符(例如,控制字符)用转义字符来表示。C语言规定:(1)用反斜杠开头后面跟一个字母代表一个控制字符;(2)用两个反斜杠代表一个反斜杠字符,用反斜杠加单撇号代表单撇号字符;(3)用反斜杠加1~3个八进制数位代表ASCII码为该八进制数的字符;(4)用反斜杠加小写字母x和1~2个十六进制数位代表ASCII码为该十六进制数的字符。

(5)字符串常量:用一对双引号括起来的零个或多个字符序列称为字符串常量。字符串常量以双撇号为定界符,但双撇号并不属于字符串。例如,“Hello”是字符串常量,但‘AB’既不是字符常量也不是字符串常量。字符串常量在机器内存储时,系统自动在字符串的末尾添加一个“字符串结束标志”(转义字符‘\0’),故字符串常量“Hello”实际在内存中占有6个字节的存储单元而不是5个字节的存储单元。

2.2.3 变量和对变量的赋值

(1)变量概念:数据被存储在一定的存储空间中。数据的加工就是在它们所在的存储区与运算器之间的传递过程中实现的。高级语言程序中数据及其存储空间被抽象为变量。每个变量都有一个名字,这个名字称为变量名。变量名代表了某个存储空间(左值)及其存储的数据(右值)。这个存储空间中存储的数据,称为该变量的值。这个存储空间的首地址,称为该变量的地址。

(2)变量赋值:把从运算器向变量所代表的存储单元传送数据的操作称为赋值。赋值操作的语法格式为:

变量=表达式

注意:

(1)赋值符号和等于号不同。

(2)赋值运算的方向从右向左,即先计算赋值号右边表达式的值,然后再将计算结果赋给左边的变量。

(3)C语言中把用赋值号连接变量和表达式的式子称为赋值表达式。赋值表达式的值就是被赋值后左边变量的值。可以将一个赋值表达式的值再赋给另一个变量。例如,b=a=3。

(4)赋值号的左边只能是变量或相当于变量的数组元素。

2.2.4 变量的声明

(1)声明的定义:C语言中规定在程序中用到的每一个变量都要声明它们的名称及属于哪一种数据类型。变量声明的语法格式为:

类型标识符 变量名1,变量名2,变量名3,…;

(2)数据类型的意义:不同类型的数据在内存中占据不同长度的存储单元,而且采用不同的存储方式;一种数据类型对应着一个值的范围;一种数据类型对应着一组允许的操作。简面言之,在引用变量之前先声明指定变量的类型,这样在编译时系统就会根据指定的类型分配给该变量一定的存储空间,并决定数据的存储方式和允许操作的方式。

(3)变量的初始化:C语言允许在声明变量时给该变量赋一个初值。这种给变量设置初值的工作称为初始化。例如:

char a=‘A’;

int b=1320,c=3000;

注意:如果没有给变量进行初始化并不意味着该变量中没有数值,而只表明该变量中尚未定义特定的值。

2.2.5 标识符

标识符是给程序中的实体(变量、常量、函数、数组、结构体和文件等)所起的名字。C语言中的标识符命名规则为:以字母或下划线开头,由字母、数字或下划线组成的字符序列。C语言中的标识符分为以下三类:

(1)保留关键字:C语言中规定了一类标识符,它们在程序中代表着特定的含义,不允许用户另作它用。例如int、float、while、else等。

(2)标准标识符:C语言中规定了一类标识符,它们被用作库函数名和预编译命令名等。虽然C语言允许用户另着它用,但是这将使这类标识符失去系统规定的原意而引起不必要的误解,因此建议用户不要将这些标准标识符另作它用。例如,sin、printf、scanf等。

(3)用户标识符:由用户自己根据需要定义的标识符。用给户标识符命名时除了要遵循标识符的命名规则外,还应该考虑到标识符“见名知义”的原则。

注意:C语言区分大小写字母,通常用小写字母表示变量、函数、数组和文件等名而用大写字母表示符号常量名,以便增强程序的可读性。

了解更多相关知识可进入视频学习

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值