高级语言程序设计教学课件 作者 课件12.ppt

高级语言程序设计教学课件 作者 课件12.ppt

ID:51964300

大小:134.00 KB

页数:11页

时间:2020-03-26

高级语言程序设计教学课件 作者 课件12.ppt_第1页
高级语言程序设计教学课件 作者 课件12.ppt_第2页
高级语言程序设计教学课件 作者 课件12.ppt_第3页
高级语言程序设计教学课件 作者 课件12.ppt_第4页
高级语言程序设计教学课件 作者 课件12.ppt_第5页
资源描述:

《高级语言程序设计教学课件 作者 课件12.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第十二章其他数据类型1枚举在实际问题中,有些变量的取值被限定在一个有限的范围内。例如,一个星期内只有七天,一年只有十二个月,一个班每周有六门课程等等。如果把这些量说明为整型,字符型或其它类型显然是不妥当的。“枚举”类型:在“枚举”类型的定义中列举出所有可能的取值,被说明为该“枚举”类型的变量取值不能超过定义的范围。枚举类型是一种基本数据类型。枚举类型定义枚举类型定义的一般形式为:enum枚举名{枚举值表};在枚举值表中应罗列出所有可用值。这些值也称为枚举元素。例如:enumweekday{sun,mou,tue

2、,wed,thu,fri,sat};该枚举名为weekday,枚举值共有7个,即一周中的七天。凡被说明为weekday类型变量的取值只能是七天中的某一天。enumcolor{red,green,blue,yellow,white};enum枚举类型的关键字,color枚举类型名。枚举类型变量的赋值和使用例enumcolor{red,green,blue,yellow,white};enumcolorselect,change,*cp;例enumcolor{red,green,blue,yellow,white}

3、select,change,*cp;例enum{red,green,blue,yellow,white}select,change,*cp;select=red;枚举变量取值范围限定在对应枚举类型表中的元素枚举变量的取值枚举元素是整常量,不是变量。例如red=3(×)编译程序把第一个枚举元素赋值为0,以后依次赋值为1、2……例enumcolor{red,green,blue,yellow,white}select;red的值为0,green、blue、yellow和white取值分别为1、2、3、4。selec

4、t=red;select被赋值为0。当变量取值范围限定在规定的整常数范围内时,可采用枚举类型。枚举类型变量不能直接使用printf、scanf等库函数输出、输入例7.1编写一个程序,输入今天是星期几,计算若干天后是星期几。#includecharweekstring[][10]={“Sun(日)”,”Mon(一)”,”Tue(二)”,”Wed(三)”,”Thu(四)”,”Fri(五)”,”Sat(六)”};enumweek{Sun=0,Mon,Tue,Wed,Thu,Fri,Sat};void

5、main(void){intd;enumweektoday,w;printf(“今天是星期:”);scanf(“%d”,&today);printf(“输入天数:”);scanf(“%d”,&d);printf(“今天是星期%s”,weekstring[today]);w=(enumweek)((today+d)%7);printf(“%d天后是星期%s”,d,weekstring[w]);}例7.2现有红、黄、蓝、黑和白色球个1只,从中依次取出3个球,编程输出所有可能的取法。#include

6、o.h>enumcolor{red,yellow,blue,white,black};voidmain(void){enumcolori,j,k,temp;intn,loop;n=0;for(i=red;i<=black;i++)for(j=red;j<=black;j++)if(i!=j){for(k=red;k<=black;k++)if((k!=i)&&(k!=j)){n++;printf(“%-5d”,n);for(loop=1;loop<=3;loop++){switch(loop){case1:te

7、mp=i;break;case2:temp=j;break;case3:temp=k;break;}switch(temp){casered:printf(“%-10s”,”red”);break;caseyellow:printf(“%-10s”,”yellow”);break;caseblue:printf(“%-10s”,”blue”);break;casewhite:printf(“%-10s”,”white”);break;caseblack:printf(“%-10s”,”black”);break

8、;}}printf(“”):}}printf(“total:%d”,n);}2位段位段的概念与定义位段类型:是一种特殊的结构类型,其所有成员均以二进制位为单位定义长 度,并称成员为位段。例如,CPU的状态寄存器,按位段类型定义如下:structstatus{unsignedsign:1;/*符号标志*/unsignedzero:1;/*零标志*/unsignedcarry:1;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。