华科C语言。第02章数据类型运算符及表达式.pptVIP

  • 3
  • 0
  • 约8.35千字
  • 约 40页
  • 2018-01-08 发布于河南
  • 举报

华科C语言。第02章数据类型运算符及表达式.ppt

华科C语言。第02章数据类型运算符及表达式

§2.2、常量与变量 常量:不变的量,包含数值常量和符号常量。 例如: 3、3u、3l、3.1416、′a′、〞Hello〞 例如: #define PRICE 30 main() { int num,total; num=10; total=num*PRICE; printf(total= %d\n,total); } 变量:可以改变的量。 ①变量的命名应符合标识符的命名规则,是以字母、下划线开头的字母、下划线、数字串。 合法变量:a、 a1、 sum、 _total 不合法变量:1a、 #88、 int ②变量要先定义,后使用。 ③常规建议:a、变量名小写,常量名大写。 b、下划线改变较长变量的可读性。 例如:day_of_year c、以下划线开头的变量名表示标准函数库内变量。例如:_flag §2.3数据类型(Data Type) 超出取值范围会怎样? TC2中int的范围是-32767~32767 如果我们给它一个小于-32767或者大于32767的数会如何呢? 现场编程测验…… 溢出(Overflow)造成的危害 一台安装了Windows 95/98的机器,如果连续运行49.7天没有重新启动,可能死机 原因: Windows自启动时刻起,有一个计数器,记录系统已经运行了多少毫秒。这个计数器是个unsigned long 类型的变量 unsigned long的最大值是:4294967295 一天有 24*60*60*1000 =秒 4294967295 /= 49.71026961805…… 当49.7天的时候,此计数器会溢出,引起死机 1、整型数据 整型常量:十进制:123 八进制:0123 ? (123)8 十六进制:0x123 ? (123)16 长整型数值:数尾+L或l。例如123L 无符号型:数尾+U或u。例如123u 整型变量: 程序举例: 例1:/*exp2_1.c*/ main( ) { int x=1267,y=01267,z=0x1267; printf(%d , %d , %d\n, x, y, z); printf(%o , %o , %o\n, x, y, z); printf(%x , %x , %x\n, x, y, z); } 程序举例: 例2:/*exp2_2.c*/ main( ) { int a,b,c,d; unsigned u; a=12;b=-24;u=10; c=a+u; d=b+u; printf(a+u=%d , b+u=%d\n, c, d); } 程序举例: 例3:/*exp2_3.c*/ main( ) { int a, b; a=2147483647; b=a+1; printf(a=%d , b=%d\n,a, b); } 2、实型数据 实型常量:日常记数法:123.45、123.45f、123.45l 科学记数法:0.12345e3 ? 123.45 12345.0E-2 ?123.45 1.2345e2 ?123.45 1.2345e2f ?123.45 实型变量: 单精度:float 4字节 6~7位有效数字 双精度:double 8字节 15~16位有效数字 长双精度:long double 16字节 18~19位有效数字 浮点数据 程序举例: 例4:/*exp2_4.c*/ main( ) { float a,b; a=123456.789e5; b=a+20; printf(b=%f\n, b); } ASCII字符表 ASCII字符表2 字符变量: char 1个字节只能存放一个字符 例如:char x=′a′、 y=′+′、z=′\n′; 程序举例: 例7:/*exp2_7.c*/ main( ) { char c1 , c2; c1=97;c2=98; printf(c1=%c , c2=%c\n, c1, c2); printf(c1=%d , c2=%d\n, c1, c2); } 程序举例: 例8:/*exp2_8.c*/ main( ) { char c1 , c2; c1=a; c2=b; c1=c1-32 ; c2=c2-32; printf(c1=%c , c2=%c\n, c1, c2); } 字符串与数值类型之间的转换 int i = 123 这样

文档评论(0)

1亿VIP精品文档

相关文档