




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,第二章,基本数据类型及运算,本章要点,数据的描述规则数据的操作规则,主要内容,2.1标识符2.2常量与变量2.3运算符和表达式2.4标准函数和自定义函数2.5格式输入输出函数,2.1标识符C语言中,标识符分为:关键字和用户自定义标识两类。一、关健字(也称为保留字)在语言中的关键字,根据其功能不同可分为以下几种。1、数据类型关键字:intlongshortcharunsignedfloatdoubleenumstructunionvoidconst2、数据存储类型关键字:autostaticregisterextern3、用于语句的关键字:ifelsecasedefaultbreakdowhileforswitchgotoreturncontinue4、为原有的数据类型命新名:typedef5、求字节数:sizeof6、预处理:defineincludeundefifelseendififdefifndef,二、用户定义标识符定义:用来标识变量、常量、函数等的字符序列标识符的命名规则:只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线字母区分大小写不能使用关键字命名原则:见名知意不宜混淆如l与I,o与0,例:判断下列标识符号合法性sumSumM.D.JohndayDate3daysstudent_name#33lotus_1_2_3charab_above$123,M.D.John,3days,#33,char,$123,ab,例1、在C程序中,APH和aph代表不同的变量。答案:,例2、,2010年3月全国计算机等级考试二级笔试试卷C语言程序设计试题,D,例3、以下选项中,能用作用户标识符的是A)voidB)8-8C)_0_D)unsigned,2009年9月全国计算机等级考试二级笔试试卷C语言程序设计试题,C,2.2常量与变量,2.2.1C语言提供了以下一些数据类型。,数据类型,构造类型,指针类型,空类型(无值类型)void,2.2.2常量和符号常量在程序运行过程中,其值不能被改变的量称为常量常量区分为不同的类型:,整型100,125,-100,0实型3.14,0.125,-3.789字符型a,b,2字符串a,ab,1232,一般用大写字母直接常量:整型常量实型常量字符常量字符串常量,如#definePRICE30,常量定义:程序运行时其值不能改变的量(即常数)分类:符号常量:用标识符代表常量定义格式:#define符号常量常量,例符号常量举例#definePRICE30main()intnum,total;num=10;total=num*PRICE;printf(total=%d,total);,运行结果:total=300,说明:程序中用#define命令行定义PRICE代表常量30,此后凡在本文件中出现的PRICE都代表30,可以和常量一样进行运算,1、整型常量(整常数)三种形式:十进制整数:由数字09和正负号表示.如123,-456,0八进制整数:由数字0开头,后跟数字07表示.如0123,011十六进制整数:由0 x开头,后跟09,af,AF表示.如0 x123,0Xff,例12与12L,例30000为int型65536为longint型,整型常量的类型根据其值所在范围确定其数据类型在整常量后加字母l或L,认为它是longint型常量,问题:0123=()100 x123=()100Xff=()10,返回,例1、表达式0195是一个八进制整数。例2、08是正确的整型常量。例3、以下选项中,合法的一组C语言数值常量是()(2007年9月全国计算机等考试原题)A、026B、12.C、.177D、0 x8A.5e-30Xa23401.510,000-0 xfe00abc3.e5例4、C程序不能正确表示的数制是()。(2008年9月全国计算机等考试原题)A、二进制B、八进制C、十进制D、十六进制,A,A,2、实型常量(实数或浮点数)表示形式:十进制数形式:(必须有小数点)如0.123,.123,123.0,0.0,123.指数形式:(e或E之前必须有数字;指数必须为整数)如12.3e3,123E2,1.23e4,e-5,1.2E-3.5,实型常量的类型默认double型在实型常量后加字母f或F,认为它是float型加上L或L认为是double型,返回,3、字符常量定义:用单引号括起来的单个普通字符或转义字符.,字符常量的值:该字符的ASCII码值,如101-A012-n376-x61-a60-0483-(),例:A-101-x41-65,如A65,a97,048,n10,如aA?n101,转义字符:反斜线后面跟一个字符或一个代码值表示,例转义字符举例(ch2_001.c,ch2_004.c)main()printf(101x42Cn);printf(Isay:Howareyou?n);printf(CProgramn);printf(TurboC);,运行结果:(屏幕显示)ABCIsay:”Howareyou?”CProgramTurboC,例main()printf(“Yb=n”);,运行结果:屏幕显示:=打印机输出:,例1、不合法的常量是()。A、2B、C、D、483例2、ch=“A”;,例、以下选项中能表示合法常量的是A)整数:1,200B)实数:1.5E2.0C)字符斜杠:D)字符串:007,2010年9月全国计算机等级考试二级笔试试题,D,2.2.3变量变量代表内存中具有特定属性的一个存储单元,它用来存放数据,这就是变量的值,在程序运行期间,这些值是可以改变的。变量名实际上是一个以一个名字对应代表一个地址,在对程序编译连接时由编译系统给每一个变量名分配对应的内存地址。从变量中取值,实际上是通过变量名找到相应的内存地址,从该存储单元中读取数据。,1、整型变量(1)整型变量的分类,共六种,有符号基本整型有符号短整型有符号长整型无符号基本整型无符号短整型无符号长整型,(signed)int(signed)short(int)(signed)long(int)unsignedintunsignedshort(int)unsignedlong(int),注意:括号表示其中的内容是可选的.,整数类型的有关数据:,类型类型说明符长度数的范围基本型int2字节-3276832767短整型short2字节-215215-1长整型long4字节-231231-1无符号整型unsigned2字节065535无符号短整型unsignedshort2字节065535无符号长整型unsignedlong4字节0(232-1),(2)整型变量的定义:规定在程序中所有用到的变量都必须在程序中定义,即“强制类型定义”。例如:inta,b;(指定变量、为整型)unsignedshortc,d;(指定变量、为无符号短整型)longe,f;(指定变量、为长整型)(3)整型常量的类型,(4)整型数据在内存中的存放形式数据在内存中是以二进制形式存放的。如:inti;/*定义为整型变量*/i=10;/*给i赋以整数10*/,0000000000001010,以两个字节为例,负数以补码的形式存放如:inti;/*定义为整型变量*/i=-10;/*给i赋以整数-10*/,111111111110110,注意:十进制数10的二进制形式为1010,TurboC2.0和TurboC+3.0为一个整型变量在内存中分配2个字节的存储单元(不同的编译系统为整型数据分配的字节数是不相同的,VC+6.0和C-Free3.5则分配4个字节)。也就是说不同系统中是不一样的。数值是以补码(complement)表示的。,例如:整数13在内存中实际存放的情况:,例2.1整型变量的定义与使用#includevoidmain()inta,b,c,d;/指定、为整型变量unsigned;/指定为无符号整型变量12;-24;10;printf(,);,说明:可以看到不同种类的整型数据可以进行算术运算,运行结果:,,例2.2整型数据的溢出#includevoidmain()inta,b;a=32767;b=a+1;printf(“%d,%dn”,a,b);,说明:数值是以补码表示的。(以16位,两个字节为例)一个整型变量只能容纳-3276832767范围内的数,无法表示大于32767或小于-32768的数。遇此情况就发生“溢出”。,运行结果:32767,-32768,例1、下列定义中,()定义的变量可以存放123.4。AlongaBunsignedbCintdDfloatc例2、以下关于long、int和short类型数据占用内存大小的叙述中正确的是()(2007年9月全国计算机等考试原题)A、均占4个字节B、根据数据的大小来决定所占内存的字节数C、由用户自己定义D、由C语言编译系统决定,D,D,(1)浮点型变量的分类浮点型变量分为单精度(float型)、双精度(double型)二类形式。,2、浮点型数据变量,(2)浮点型数据在内存中的存放形式一个浮点型数据一般在内存中占4个字节(32位)。与整型数据的存储方式不同,浮点型数据是按照指数形式存储的。系统把一个浮点型数据分成小数部分和指数部分,分别存放。指数部分采用规范化的指数形式。,(3)浮点常量的类型,例2.3浮点型数据的舍入误差#includevoidmain()floata,b;a=123456.789e5;b=a+20;printf(“%fn”,b);,说明:一个浮点型变量只能保证的有效数字是7位有效数字,后面的数字是无意义的,并不准确地表示该数。应当避免将一个很大的数和一个很小的数直接相加或相减,否则就会“丢失”小的数,运行结果:123456.789e5,3、字符变量(1)字符变量的定义字符型变量用来存放字符常量,注意只能放一个字符,不要以为在一个字符变量中可以放一个字符串(包括若干字符)。字符变量的定义形式如下:charc1,c2;它表示c1和c2为字符型变量,各可以放一个字符,因此可以用下面语句对c1、c2赋值:c1=a;c2=b;,(2)字符数据在内存中的存储形式及其使用方法一个字符常量存放到一个字符变量中,实际上并不是把该字符的字型放到内存中去,而是将该字符的相应的ASCII代码放到存储单元中。这样使字符型数据和整型数据之间可以通用。,注意:一个字符数据既可以以字符形式输出,也可以以整数形式输出。,例2.3向字符变量赋以整数。#includevoidmain()charc1,c2;c1=97;c2=98;printf(“%c%cn”,c1,c2);printf(“%d%dn”,c1,c2);,说明:在第和第4行中,将整数97和98分别赋给c1和c2,它的作用相当于以下两个赋值语句:c1;c2;因为a和b的ASCII码为97和98,运行结果:9798,例2.4大小写字母的转换#includevoidmain()charc1,c2;c1=a;c2=b;c1=c1-32;c2=c2-32;printf(“cc,c1,c2);,说明:程序的作用是将两个小写字母a和b转换成大写字母A和B。从代码表中可以看到每一个小写字母比它相应的大写字母的ASCII码大32。语言允许字符数据与整数直接进行算术运算。,运行结果:,4、变量赋初值,(1)语言允许在定义变量的同时使变量初始化,称为变量赋初值如:inta=3;/指定为整型变量,初值为floatf=3.56;/指定为浮点型变量,初值为.56charc=a;/指定为字符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (2025年标准)更换楼层协议书
- (2025年标准)高校专利分配协议书
- (2025年标准)高空挑战协议书
- (2025年标准)高档物品转让协议书
- (2025年标准)钢厂合作基地协议书
- 小学音乐湘教版课程教学方案
- 钢结构施工风险控制方案
- 城市临时用地管理的现状与优化对策
- (2025年标准)熟食制品供货协议书
- (2025年标准)货车闲置转让协议书
- 视神经脊髓炎病例汇报
- 高质量数据集实践指南(1.0)
- 二战历史教育
- 2025年机动车授权签字人考试题库及答案
- 减盐减糖减油烹饪技巧培训
- 民航英语说课课件
- AI大模型数字港口业务架构总体设计方案
- 2025年高考全国一卷英语试题真题文档版(含答案)
- 消化性溃疡疾病的护理
- 模具公司品质管理制度
- 2025-2030年中国少儿期刊出版行业市场深度调研及前景趋势与投资研究报告
评论
0/150
提交评论