第三章 最简单的C程序设计_第1页
第三章 最简单的C程序设计_第2页
第三章 最简单的C程序设计_第3页
第三章 最简单的C程序设计_第4页
第三章 最简单的C程序设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

第三章最简单的C程序设计顺序程序设计3.1C的数据类型,C语言程序中的数据分为两类:*常量*变量,数据类型,一、常量,1、整型常量integerconstant(1)、带符号数的整型常量2个字节signed补码形式存于内存十进制数:由09和正负号组成。-5953150十六进制数:由数字0和字母x或X组合开头(0 x或0X)。0 xf0 xaf0 x3a八进制数:由数字0开头。017,(2)、带符号数的长整型常量4个字节补码形式存于内存数用l或L结尾。-123L1234567L(3)、无符号数unsigned数用u或U结尾。85U123LU,整型数据的溢出turboc中一个int型变量的最大允许值为32767,如果再加1,会出现什么情况?main()inta,b;a=32767;b=a+1;printf(%d,%d,a,b);运行结果为32767,-32768,2、浮点型常量实数floatingpoint小数形式的实数3.5-.335.指数形式的实数exponentialnotation3E5.1E-31.5e1E前必有数字,整数小数均可E后必为整数。,1e3、1.8e-3、-123e-6、-.1e-3e3、2.1e3.5、.e3、e,规范化的指数形式:在字母e(或E)之前的小数部分中,小数点左边应有一位(且只能有一位)非零的数字.例如:123.456可以表示为:123.456e0,12.3456e1,1.23456e2,0.123456e3,0.0123456e4,0.00123456e5其中的1.23456e3称为“规范化的指数形式”。,实数又分单精度实数和双精度实数singleprecisionnumbersanddoubleprecisionnumbers单精度实数:4个字节有效字位数67位f或F结尾双精度实数:8个字节有效字位数1516位L或l结尾注意:C程序中的实型常量都是双精度的。,实型数据的舍入误差实型变量能提供的有效数字是有限的,在有效位以外的数字将被舍去例main()floata,b;a=123456,789e5f;b=a+20;printf(%f,b);a+20的理论值应是1234567892012345678848.000000,说明:一个浮点型变量只能保证的有效数字是7位有效数字,后面的数字是无意义的,并不准确地表示该数。应当避免将一个很大的数和一个很小的数直接相加或相减,否则就会“丢失”小的数,3、字符常量characterconstant一对单引号之内的单个字符asinglecharacterclosedbysinglequotes表示ASCII码集中的任意可打印字符a5AASCIIcodeAmericanStandardCodeforInformationInterchang(128code)ANSIcodeAmericanNationalStandardsInstitute(256code),转义字符(转义序列)escapesequences表示非打印字符或易产生混淆的字符(backslash)后跟八进制数(13位)组成或x及十六进制数(12位)组成或字符组成a还可写成141或x61n或012,注:字符数据在内存中的存储形式及使用方法,Chara;a=a;计算机自动给a分配一存储单元。其中存放的不是a字符,而是其ASCII码。intb;b=97;C语言中,字符型数据和整形数据之间可以通用。字符型数据可以以字符形式输出,也可以整型形式输出。printf(“%d,%c”,a,a);对字符数据可进行运算b=a+3;字符数据与整型数据之间可相互赋值。,4、字符串常量,一对“”之间的字符序列。如:“abc”字符串常量中的字符依次存储在内存中一块连续的区域中,并把空操作字符“0”自动加到字符串的尾部,作为字符串的结束符。字符串中字符个数为n,则所占内存空间为n+1个字节。字符串常量不能参与运算一行写不开,需用连接。,5、符号常量,#definePI3.1415926total=PI*2*d;PI即符号常量。在预处理时替换。在程序执行中不能重新对它赋值。优点:节省运行时间;提高程序可读性;便于修改,二、变量variables,1、变量的初始化变量在使用之前必先说明,说明的同时赋初值,称为初始化。intn,m,j;intn=3;doublex=1.28;charc=A;inti=1,j=2,k=3;,2、变量的数据类型variabledatatypes(1)、整型变量integervariable带符号整型变量signed名称写法内存中分配字节数数据范围基本型int2-3276832767短整型short(int)2-3276832767长整型long(int)4-231231-1双长型longlong8-263263-1无符号整型变量名称写法内存中分配字节数数据范围基本型unsignedint2065535短整型unsignedshort2065535长整型unsignedlong40232-1,双长型unsignedlonglong80264-1(2)、实型变量名称写法内存中分配字节数有效数字数据范围单精度float467位10-381038双精度double81516位10-30810308长双精度longdouble161819位10-4932104932(3)、字符变量chara;分配1个字节,只能存放一个字符。,3.2运算符和表达式,一、简单赋值运算符,复合赋值运算符,操作数E1=操作数E1运算符操作数E2如:x=x+y;可表示成:操作数E1运算符=操作数E2如:x+=y;注:运算符与等号之间不能有空格。若右边是表达式,则展开时要加括号。x%=y+3;等价于x=x%(y+3);,二、算术运算符,+-*/%-作单目运算时为取负运算。(右结合性)X=-y;/运算中,若操作数都为整数,则执行整除运算,结果也为整数。若操作数中有一个是实数,则执行浮点除法运算,结果也为实数。9/5=19.0/5=1.8%取余运算5%3=27%-3=1,Inta=3;a=a+a+a+;a=(+a)+(+a)+(+a);,三、表达式,由运算符组成的式子即形成表达式。算术表达式a*b/2/c+3赋值表达式f=a*b/2/c+3,3.3表达式中的数据类型转换,一、自动类型转换char一定转换

温馨提示

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

评论

0/150

提交评论