欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    C程序设计教程第12章枚举类型、位运算.ppt

    • 资源ID:6503622       资源大小:268KB        全文页数:20页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C程序设计教程第12章枚举类型、位运算.ppt

    ,枚举定义,枚举定义:变量的取值是有限的、固定的;如一周只有七天,一年只有十二个月。枚举是一个整型符号常量的集合。枚举类型定义:enum 枚举类型名 枚举值表;如:enum week sun,mon,tue,wed,thu,fri,sat;enum week sat=6,sun,mon=1,tue,wed=5,thu,fri;,枚举值默认值从0开始递增,如果进行初始化,后面的枚举常量会以初始化的值进行递增,直到遇到另一个枚举常量初始化为止。,枚举类型变量的定义,方法一:enum 枚举类型名 变量名表;Enum week w1,w2;方法二:定义类型的同时定义变量enum week Sun,Mon,Tue,Wed,Thu,Fri,Sat w1,w2;,枚举变量的初始化,enum week sun,mon,tue,wed,thu,fri,sat w1,w2;w1=mon;w2=sat;printf(“%d,%dn”,w1,w2);则输出结果是多少?,1,6,typedef类型定义,1.含义:可以为数据类型取别名,别名的作用和数据类型的作用一样。格式:typedef 类型名 标识符;含义:定义标识符是类型名的别名typedef int INTEGER;INTEGER a,b,c;作用与int a,b,c;一样,2023/11/7,6,枚举编程举例,口袋中有红、黄、蓝、白、黑5种颜色的球若干个。每次从口袋中先后取出3个球,问得到3种不同颜色的球的可能取法,输出每种排列的情况。球只能是5种色之一,而且要判断各球是否同色,应该用枚举类型变量处理。设取出的球为i,j,k。根据题意,i、j、k分别是5种色球之一,并要求i!=j!=k。可以用穷举法,即一种可能一种可能的试,看哪一组符合条件。,2023/11/7,7,用typedef说明类型的步骤,1)先用定义变量的方法写出定义体。2)把变量名换成新类型名。3)在最前面加上typedef。4)已定义完新类型名,可用此新类型名去定义变量。,练习,定义float类型的别名为 REAL;并用别名定义两个变量a,b;定义结构体struct int month,day,yesr;的类型别名为DATE;并用别名定义结构体变量birthday.定义枚举 enum date=year,month,day的类型别名为 DATE;并用别名定义两个枚举变量a=month,b=year;,2023/11/7,9,Typedef练习:,定义长度为100的整型数组int a100;的类型别名为 NUM;并用别名定义一个数组变量n;定义字符指针 char*ss的别名为STRING;并用别名定义两个字符指针变量p,q。,2023/11/7,10,typedef举例:,typedef int INTEGER;INTEGER i,j;-基本类型typedef float REAL;REAL a,b;-基本类型typedef struct(union)-结构体(共用体)int month,day,yesr;DATE;DATE birthday,*p;typedef enum date=year,month,day DATE;DATE a=month,b=year;typedef int NUM100;NUM n;-数组typedef char*STRING;STRING p,s10;-指针typedef int(*POINTER)();POINTER p1,p2;-函数指针,2023/11/7,11,typedef优点:,用typedef可以声明各种类型名,但不能用来定义变量。用typedef声明数组类型,字符串类型,结构类型后,使用会比较方便;用typedef只是对已经存在的类型增加一个类型名,没有创造新的类型。使用typedef有利于程序的通用与移植。如将Int a,b,c;改为long a,b,c;如果程序中多处用Int定义变量,则要改动多处。如果用typedef定义类型:typedef int INTEGER;后,在程序中所有整型变量都用INTEGER定义。改变时,只需把typedef int INTEGER;改变为typedef long INTEGER;即可,2023/11/7,12,位运算 共有六种运算符,注意:1.位运算是对二进制的位进行运算 2.只能对int型、char型和long型进行位运算,2023/11/7,13,运算规律,真值表,位运算,2023/11/7,14,左移运算,左移功能:把左边的运算数的各个二进位全部左移若干位,由右边的数指定移动的位数,高位丢弃,低位补0;如a=3;a=a4;后,a=48;如果左移时被舍弃的高位中不包含1,则左移1位相当于乘以2(扩大2倍);如1100 00002后变为0000 0000,被舍弃的高位中含有1,因此虽左移2位,值并没有扩大4倍。而0011 00002后变为1100 0000;被舍弃的高位中不包括1,所以值扩大4倍,2023/11/7,15,右移运算,右移功能:把左边的运算数的各个二进位全部右移若干位,由右边的数指定移动的位数,高位丢弃,低位补0;如a=16;a=a2;后,a=4;如果右移时被舍弃的低位中不包含1,则右移1位相当于除以2(缩小2倍);如000 11112后变为0000 0011,被舍弃的低位位中含有1,因此虽右移2位,值并没有缩小4倍。而0011 00002后变为0000 1100;被舍弃的低位中不包括1,所以值缩小4倍如果高位为1,则右移时高位补1,高位为0,高位补0;,2023/11/7,16,实例:已知:int x=7,y=10,z=1;设字长为8位,求:,2(0000 0111&0000 1010=0010)1(0000 0111&0000 0001=0001)15(0000 0111 0000 1010=1111)11(0000 1010 0000 0001=1011)13(0000 0111 0000 1010=1101)8(0000 0111)=1111 1000 7 28(0000 0111 2=0000 0010)1(0000 0111 2=0000 0001),x&y=x&z=x y=y z=x y=x=x=x2=x2=,2023/11/7,17,格式:sizeof(表达式或数据类型)功能:求运算对象在内存中所占的字节数,求:printf(“%d,%dn”,sizeof(int),sizeof(char);,五.sizeof 运算符,结果:2,1,求:printf(%d,sizeof(ASTn01212);,结果:10,2023/11/7,18,运算符小结,算术运算符:+,-,*,/,%赋值运算符:=关系运算符:,=,sizeof(),(type),,2023/11/7,19,运算符的优先级,2023/11/7,20,5 本章小结,枚举类型是一种基本数据类型,而不是一种构造类型。位运算符只有逻辑运算和移位运算两类。位运算符可以与赋值符一起组成复合赋值符。如&=,|=,=,=,=等。利用位运算可以完成汇编语言的某些功能,如置位,位清零,移位等。还可进行数据的压缩存储和并行运算。位域在本质上也是结构类型,不过它的成员按二进制位分配内存。其定义、说明及使用的方式都与结构相同。,

    注意事项

    本文(C程序设计教程第12章枚举类型、位运算.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开