C语言从入门到精通.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
会计学;10.1 共用体类型与 共用体变量;标识符给出共用体名, 是共用体类型名的主体, 定义的共用体类型由“union 标识符”标识。 例如,定义一个共用体类型, 要求包含一个整型成员,一个字符型成员和一个单精度型成员: union icf {int i;  char c;  float f;  }; ;2 共用体变量的定义 ;(2) 定义共用体类型的同时定义共用体变量;(3)定义共用体类型时,省略共用体类型名,同时定义共用体类型变量;10.2 共用体变量的引用 ; (1) 共用体变量中,可以包含若干个成员及若干种类型,但共用体成员不能同时使用。在每一时刻,只有一个成员及一种类型起作用,不能同时引用多个成员及多种类型。;(3) 共用体变量的地址和它的各个成员的地址相同。 (4) 不能企图引用共用体变量名来得到某成员的值。 (5) 共用体变量不能作函数参数,函数的返回值也不能是共用体类型。  (6) 共用体类型和结构体类型可以相互嵌套,共用体中成员可以为数组,甚至还可以定义共用体数组。 ;写出下列程序的执行结果; 设有若干教师的数据,包含有教师编号、姓名、职称,若职称为讲师,则描述他们的所讲课程,若职称为教授,则描述他们所写论文数目。 ;10.4 位运算与位段结构;1. 位运算(主要有:、|、~、^、、);(3)^(按位“异或”) 运算规则为:0^0=0,0^1=1,1^0=1,1^1=0 例如,-5^3的值为-8。 (4)~(按位“取反”) 运算规则为:~0=1,~1=0 例如,~7的值为-8。 (5)(“左移”) 例如,32,将3左移2位,右边(最低位)补0, 结果为12,相当于3×2×2的结果。 ;(6)(“右移”) 移动对象为正数时,高位补0。为负数时,逻辑右移,高位补0;算术右移,高位补1。Turbo C采用的是算术右移,有的C语言版本则采用逻辑右移。 例如,-32,将3右移2位,左边(最高位)补1,结果为-1。;?位段结构中位段的定义格式为: unsigned 成员名:二进制位数 例如: struct bytedata {unsigned a:2; /*位段a,占2位*/ unsigned:6; /*无名位段,占6位,但不能访问*/ unsigned:0; /*无名位段,占0位,表下一位段从下一字边界开始*/ unsigned b:10; /*位段b,占10位*/ int i; /*成员i,从下一字边界开始*/ }data;;(1)一个位段必须存储在同一存储单元(即字)之中,不能跨两个单元。如果其单元空间不够,则剩余空间不用,从下一个单元起存放该位段。 (2)可以通过定义长度为0的位段的方式使下一位段从下一存储单元开始。;(3)可以定义无名位段。 (4)位段的长度不能大于存储单元的长度。 (5)位段无地址,不能对位段进行取地址运算。 (6)位段可以以%d,%o,%x格式输出。 (7)位段若出现在表达式中,将被系统自动转换成整数。 ; 编程将一个16进制整数(占2字节)的各位循环左移4个二进制位,如2fe1循环左移4个二进制位后为fe12。;#include “stdio.h” main( ) {int x,y; printf(“\n请输入16进制整数:”); scanf(“%x”,x); y=x(16-4)0xf; x=(x4)0xffff; /*16位的C语言程序不需要“按位与”0xffff*/ x=x|y; printf(“循环左移4个二进制位得:%x”,x); };10.5 枚举类型 ;(1) 定义枚举类型status, 包含复制与删除两种状态: enum status {copy, delete};  枚举类型status仅有两个数据,一个是copy,一个是delete, 序号为0、 1, 代表复制与删除。 ; (2) 定义枚举类型color,包含红、黄、蓝、白、黑五种颜色:  enum color  {red, yellow, blue, white, black};  枚举类型color有red、 yellow、 blue、 white、 black五个数据, 序号为0、 1、 2、 3、 4, 代表红、 黄、 蓝、 白、 黑五种颜色。 ; (3) 定义枚举类型weekday, 包含一周的七天:  enum weekday  {sun, mon, tue, wed, thu, fri, sat}; 

文档评论(0)

kuailelaifenxian + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体太仓市沙溪镇牛文库商务信息咨询服务部
IP属地上海
统一社会信用代码/组织机构代码
92320585MA1WRHUU8N

1亿VIP精品文档

相关文档