版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第第页C语言N02C语言基本数据类型2学时+2学时第二章基本数据类型
本章课程共2学时其中:授课2学时,上机2学时
2.1基本数据类型类型符号关键字(signed)int(signed)short(signed)long所占位数161632数的范围
P45-32768(-215)~32767(215-1)-32768(-215)~32767(215-1)-2147483648(-231)~2147483647(231-1)
有整型无
unsignedintunsignedshortunsignedlong
161632
0~65535(216-1)0~65535(216-1)0~4294967295(232-1)
有实型有有无
floatdoublecharunsignedchar
326488
3.4e-38~3.4e381.7e-308~1.7e308-128(-27)~127(27-1)0~255(28-1)2
字符型2022-6-27
2.2常量:程序运行时值不能转变的量P39符号常量:用标识符代表的常量/*符号常量举例E*02_01.c*/#definePRICE30main(){intnum,total;num=10;total=num*PRICE;printf(total=%d,total);}宏定义预处理指令,不是C语句
整型常量12,-22435,0313,0*121
实型常量3.14,1.2e-8,3.6E+9
字符常量A,‘E,‘+,‘\101,‘\*EF,‘\n
径直常量:径直用数值表示的常量2022-6-27
字符串常量“China”,“Hellow”,3“”
三种整型径直常量的表示方式十进制符号:0~9,+,123,-456
八进制十六进制
以0开头,后面跟符号:0~7,以0*开头,后面跟符号:0~9,a~f,A~F
0123,0110*123,0*ff
整型径直常量的类型的确定原那么:(1)依据其值所在范围确定其数据类型(2)在整常量后加字母l或L,认为它是longint型常量(2)在整常量后加字母u或U,认为它是unsignedint型常量例:判定以下三个整型径直常量的存储方式和类型(1)12315(2)123L(3)-12345u2022-6-274
实型径直常量的表示形式小数形式指数形式0.12,.34,-.56,123.12.3e3,123E2,1.23e4需要要有小数点E或e前需要有数字E或e后需要为整数
实型径直常量的类型的确定原那么:(1)默认为双精度double型(2)在实型常量后加字母f或F,认为它是浮点型(float)常量
2022-6-27
字符常量:用单引号括起来的单个一般字符或转义字符
如:‘aA?\n\101字符常量的值:该字符的ASCII码值如:‘A—65,‘a—97,‘0—48,\n—10转义字符:反斜线后面跟一个字符或一个代码值表示转义字符\n
含义换行
转义字符\t
含义制表符
例转义字符举例main(){printf(\101\*42C\n);printf(Isay:\Howareyou?\\n);printf(\\CProgram\\\n);printf(Turbo\'C\');}
\v\r\a
垂直制表符回车响铃
\b\f\\
退格换页反斜线
\\ddd
单引号3位8进制数
\”\*hh
双引号2位16进制数
2022-6-27
运行结果:(屏幕显示)ABCIsay:”Howareyou?”\CProgram\TurboC
字符串常量:用双引号(“”)括起来的字符序列每个字符串尾自动加一个‘\0’作为字符串结束标识hellow\0\0
字符常量与字符串常
量不同
a
a
“a”
a
\0
例:判断以下常量所占内存空间大小(1)'a'(2)China
答:(1)'a'为字符常量,所占空间为1字节(2)China为字符串常量,所占空间为字符数5+1=6字节2022-6-277
2.3变量:内存中具有特定属性的单元P41变量的理解aEFh23
–变量代表一个存储单元–变量具有肯定的数据类型–变量有一个可以标识的名字用于安排内存
合法标识符作为变量名称
数据类型变量1[,变量2,…,变量n];
例:右侧程序中有哪些错误?main()
{inta,b=2;c=2.3;变量data应在开始处定义floatdata;a=1;可以在定义的时候赋初值data=(a+b)*1.2;printf(“data=%f\n”,data);2022-6-27}变量c未定义
基本数据类型变量整型变量一般占2字节short≤int≤long用sizeof(类型标识符)测量
实型变量
字符型变量
float:占4字节,提供7字符变量存放字符位有效数字ASCII码double:占8字节,char与int数据间可进15~16位有效数字行算术运算
例:a=D;/*a=68;*/*=A+5;/**=65+5;*/s=!+G/*s=33+71;*/
没有字符串变量,用字符数组存放2022-6-279
变量和常量定义的一个例子
例/*E*02_04.c*/#definePRICE12.5main(){intnum=3;floattotal;charch1,ch2=D;
宏定义变量定义
total=num*PRICE;输出结果ch1=ch2-A+a;printf(“total=%f,ch1=%c\n”,total,ch1);}2022-6-27
运行结果:total=37.500000,ch1=d
2.4基本数据类型的数据的输入输出P65留意:–C程序中没有输入输出指令–C程序中的输入输出由特定的函数来实现字符输出:putchar()
如何掌控这四个函数?(1)了解功能
数据输出格式输出:printf()字符输入:getchar()格式输入:scanf()
(2)了解应用格式(3)了解输入参数(4)知道返回值11
数据输入
2022-6-27
例m.n例inta=1234;floatf=123.456;charch=a;printf(“%8d,%2d\n”,a,a);printf(“%f,%8f,%8.1f,%.2f,%.2e\n”,f,f,f,f,f);printf(“%3c\n”,ch);运行1234,1234结果:123.456001,123.456001,123.5,123.46,1.2e+02a例staticchara[]=“Hello,world!”;printf(“%s\n%15s\n%10.5s\n%2.5s\n%.3s\n”,a,a,a,a,a);运行结果:Hello,world!Hello,world!HelloHelloHel
2022-6-27
例-
例inta=1234;floatf=123.456;staticcharc[]=“Hello,world!”;printf(“%8d\n%-8d\n”,a,a);printf(“%10.2f\n%-10.1f\n”,f,f);printf(“%10.5s\n%-10.3s\n”,c,c);运行结果:12341234123.46123.5HelloHel
2022-6-27
例0、+例inta=1234;floatf=123.456;printf(“%08d\n”,a);printf(“%010.2f\n”,f);printf(“%+08d\0+8d\n”,a);printf(“%+010.2f\0+10.2f\n”,f);
//00001234//0000123.46//000+1234//+0001234//000+123.56//+000123.56
例#例inta=123;printf(“%o,%#o,%
*,%#*\n”,a,a,a,a);//173,0173,7B,0*7B例l例longa=65536;printf(“%d,%8ld\n”,a,a);//0,6553600000000000000010000000000000000142022-6-27
格式化输入的要点例字符串输入的截取例scanf(“%3c%2c”,c1,c2);输入abcde那么‘ac1,dc2数字输入的截取scanf(“%4d%2d%2d”,yy,mm,dd);输入19991015那么1999yy,10mm,15dd空格和回车作结束分隔scanf(“%2d%*3d%2d”,a,b);输入1234567那么12a,67b
例屏蔽符*的应用例scanf(“%3d%*4d%f”,k,f);输入12345678765.43那么123k,8765.43f例其它字符原样输入scanf(“%d,%d”,a,b)输入3,4那么3a,4b
例其它字符原样输入scanf(“a=%d,b=%d,c=%d”,a,b,c);输入a=12,b=24,c=36那么12a,24b,36c其中空格对应
2022-6-27
例其它字符原样输入scanf(“%d:%d:%d”,h,m,s);输入12:30:45那么12h,30m,45s
留意:此处不可少!
2.5不同类型间的数据转换隐式转换转换场合运算转换赋值转换输出转换函数调用转换
P54
intma*(int*,inty)inta;{floatf=1.2;}i=(int)*;例:charch;inti;floatf;doubled;longl;a=f;inta=65;charch='A';floatf=6.57;……printf(“*=%f,i=%d”,*,i);a的值为printf(a=%c,ch=%d,f=%d,a,ch,f);inta;?}-(f+i)+10+a+i*f-d/lch/I+f*d1输出结果:a=A,ch=65,f=6a=ma*(3.14,'A');结果:*=3.600000,i=32022-6-27
例unsigned(int)(*+y)例main(){float*;(int)*+y(double)(3/2)inti;低intchar,short(int)3.6*=3.6;
高doublefloat显式转换(强制转换)形式:(类型名)(表达式)得到所需类型的中间变量,long原变量类型不变
2.6算术运算符与算术表达式包括符号–基本算术运算符:+-*/%–自增和自减运算符:++-例例5/2=2-5/2.0=-2.5例5%2-5%21%105%15.5%2=1=-1=1=0()j=3;j=3;j=3;j=3;a=3;a=3;
P52
学习运算符时掌控什么?1.目:运算对象的个数2.功能3.优先级
4.结合方向(难点)k=++j;k=j++;printf(“%d”,++j);printf(“%d”,j++);b=5;c=(++a)*b;b=5;c=(a++)*b;//j=4,k=4//j=4,k=3//4//3//a=4,c=20//a=4,c=15
例-i++-(i++)i=3;printf(“%d”,-i++);//-32022-6-27
例j+++k;(j++)+k;17
2.7赋值运算符和赋值表达式包括符号
P59
例3=*-2*y;()a+b=3;()
–基本运算符:=–复合运算符:+=-=*=/=%====^=|=例a=3;d=func();c=d+2;a+=3a=a+3**=y+8*=**(y+8)*%=3*=*%3例那么
floatf;inti;i=10;f=i;f=10.0例inti;i=2.56;//结果i=2;
例:a=12;a+=a-=a*a;//a=-264等价于a=a+(a=a-(a*a))
例inta=2;a%=4-1;a+=a*=a-=a*=3;//a=0等价于a=a+(a=a*(a=a-(a=a*3)))例:a=b=c=5a=(b=5)a=5+(c=6)a=(b=4)+(c=6)a=(b=10)/(c=2)//表达式值为5,
a,b,c值为5//b=5,a=11//表达式值为11,c=6,a=11//表达式值10,a=10,b=4,c=6//表达式值5,a=5,b=10,c=2
2022-6-27
2.8逗号运算符和逗号表达式例a=3*5,a*4//a=15,表达式值60a=3*5,a*4,a+5//a=15,表达式值20*=(a=3,6*3)//赋值表达式,表达式值18,*=18*=a=3,6*a//逗号表达式,表达式值18,*=3a=1;b=2;c=3;printf(“%d,%d,%d”,a,b,c);//1,2,3printf(“%d,%d,%d”,(a,b,c),b,c);//3,2,3
例:/*E*02_05.c*/#includestdio.hmain(){int*,y=7;floatz=4;*=(y=y+6,y/z);printf(*=%d\n,y=%d,*,y);}2022-6-27
运行结果:*=3,y=1319
第二章基本数据类型
本章课程共2学时其中:授课2学时,上机2学时
2.1基本数据类型类型符号关键字(signed)int(signed)short(signed)long所占位数161632数的范围
P45-32768(-215)~32767(215-1)-32768(-215)~32767(215-1)-2147483648(-231)~2147483647(231-1)
有整型无
unsignedintunsignedshortunsignedlong
161632
0~65535(216-1)0~65535(216-1)0~4294967295(232-1)
有实型有有无
floatdoublecharunsignedchar
326488
3.4e-38~3.4e381.7e-308~1.7e308-128(-27)~127(27-1)0~255(28-1)2
字符型2022-6-27
2.2常量:程序运行时值不能转变的量P39符号常量:用标识符代表的常量/*符号常量举例E*02_01.c*/#definePRICE30main(){intnum,total;num=10;total=num*PRICE;printf(total=%d,total);}宏定义预处理指令,不是C语句
整型常量12,-22435,0313,0*121
实型常量3.14,1.2e-8,3.6E+9
字符常量A,‘E,‘+,‘\101,‘\*EF,‘\n
径直常量:径直用数值表示的常量2022-6-27
字符串常量“China”,“Hellow”,3“”
三种整型径直常量的表示方式十进制符号:0~9,+,123,-456
八进制十六进制
以0开头,后面跟符号:0~7,以0*开头,后面跟符号:0~9,a~f,A~F
0123,0110*123,0*ff
整型径直常量的类型的确定原那么:(1)依据其值所在范围确定其数据类型(2)在整常量后加字母l或L,认为它是longint型常量(2)在整常量后加字母u或U,认为它是unsignedint型常量例:判定以下三个整型径直常量的存储方式和类型(1)12315(2)123L(3)-12345u2022-6-274
实型径直常量的表示形式小数形式指数形式0.12,.34,-.56,123.12.3e3,123E2,1.23e4需要要有小数点E或e前需要有数字E或e后需要为整数
实型径直常量的类型的确定原那么:(1)默认为双精度double型(2)在实型常量后加字母f或F,认为它是浮点型(float)常量
2022-6-27
字符常量:用单引号括起来的单个一般字符或转义字符
如:‘aA?\n\101字符常量的值:该字符的ASCII码值如:‘A—65,‘a—97,‘0—48,\n—10转义字符:反斜线后面跟一个字符或一个代码值表示转义字符\n
含义换行
转义字符\t
含义制表符
例转义字符举例main(){printf(\101\*42C\n);printf(Isay:\Howareyou?\\n);printf(\\CProgram\\\n);printf(Turbo\'C\');}
\v\r\a
垂直制表符回车响铃
\b\f\\
退格换页反斜线
\\ddd
单引号3位8进制数
\”\*hh
双引号2位16进制数
2022-6-27
运行结果:(屏幕显示)ABCIsay:”Howareyou?”\CProgram\TurboC
字符串常量:用双引号(“”)括起来的字符序列每个字符串尾自动加一个‘\0’作为字符串结束标识hellow\0\0
字符常量与字符串常
量不同
a
a
“a”
a
\0
例:判断以下常量所占内存空间大小(1)'a'(2)China
答:(1)'a'为字符常量,所占空间为1字节(2)China为字符串常量,所占空间为字符数5+1=6字节2022-6-277
2.3变量:内存中具有特定属性的单元P41变量的理解aEFh23
–变量代表一个存储单元–变量具有肯定的数据类型–变量有一个可以标识的名字用于安排内存
合法标识符作为变量名称
数据类型变量1[,变量2,…,变量n];
例:右侧程序中有哪些错误?main()
{inta,b=2;c=2.3;变量data应在开始处定义floatdata;a=1;可以在定义的时候赋初值data=(a+b)*1.2;printf(“data=%f\n”,data);2022-6-27}变量c未定义
基本数据类型变量整型变量一般占2字节short≤int≤long用sizeof(类型标识符)测量
实型变量
字符型变量
float:占4字节,提供7字符变量存放字符位有效数字ASCII码double:占8字节,char与int数据间可进15~16位有效数字行算术运算
例:a=D;/*a=68;*/*=A+5;/**=65+5;*/s=!+G/*s=33+71;*/
没有字符串变量,用字符数组存放2022-6-279
变量和常量定义的一个例子
例/*E*02_04.c*/#definePRICE12.5main(){intnum=3;floattotal;charch1,ch2=D;
宏定义变量定义
total=num*PRICE;输出结果ch1=ch2-A+a;printf(“total=%f,ch1=%c\n”,total,ch1);}2022-6-27
运行结果:total=37.500000,ch1=d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 糖足护理个案比赛
- 机关公文写作结构方法
- 幼儿园中班秋学期班务总结
- 浙江省稽阳联谊学校2024-2025学年高三上学期11月月考英语试题 含解析
- 规划设计阶段成本控制
- 管理信息系统周冲
- 光伏企业战略规划
- 2020-2021学年人教部编版语文三年级上册-《一块奶酪》教案
- 楼层安全注意事项培训
- 2025年高三二轮总复习化学考前回归 上篇 回归1 物质的分类和计量
- GB/T 34015.2-2020车用动力电池回收利用梯次利用第2部分:拆卸要求
- GB/T 25860-2010蒸发式冷气机
- 公文格式(全区)课件
- 言语障碍康复训练培训课件
- NB∕T 10626-2021 海上风电场工程防腐蚀设计规范
- 石油勘探开发采油过程简介课件
- 八年级家长会课件版
- 旅游心理学服务中的人际交往 3课件
- 2022年医学专题-胆石症PPT资料
- 厂房拆除专项工程施工方案
- IPQC首件檢驗記錄表
评论
0/150
提交评论