C语言项目化教程二_第1页
C语言项目化教程二_第2页
C语言项目化教程二_第3页
C语言项目化教程二_第4页
C语言项目化教程二_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

算术运算符和算术表达式

张竞丹深圳信息职业技术学院12自增自减运算目录算术运算目录121算术运算自增自减运算算术运算算术运算基本的算术运算符

+加法运算符或正值运算符如:3+5,+3

-减法运算符或负值运算符如:5-2,-2

*乘法运算符如:3*5

/除法运算符如:5/3结果为整型,舍去小数。如果运算量中有一个是实型,则结果为双精度实型。

%求余运算符(模运算符)要求参与运算的量均为整型运算符的优先级和结合性:先乘除后加减,自左至右课前准备算术运算计算下列结果:5/43+7(float)(6+7)练习目录122自增自减运算自增自减运算算术运算课前准备自增自减运算自增1运算符"++",其功能是使变量的值自增1自减1运算符"--",其功能是使变量值自减1自增1,自减1运算符均为单目运算,都具有右结合性可有以下几种形式++ii自增1后再参与其它运算--ii自减1后再参与其它运算i++i参与运算后,i的值再自增1i--i参与运算后,i的值再自减1注:自增、自减运算符只能用于变量,而不能用于常量和表达式++和--的结合方向是自右至左的课前准备当a=5;b=5;c=5;d=5;时,计算:a++;b--;++c;--d;练习自增自减运算谢谢您的聆听!Thankyou!数据类型转换

张竞丹深圳信息职业技术学院C语言支持不同类型数据的混合计算,但是要先转换为同一种类型强制类型转换:C语言提供了可显式指定类型转换的语法支持由程序设计人员具有数据类型转换的权限。自动类型转换:编译系统自动完成,不需要用户参与。2.3+10–1.5

'a'数据类型转换自动类型转换已知球的半径r=1.5,求球的体积思考计算体积的结果(10.602875),为什么与数学计算结果(14.137167)不同?分析其中类型的自动转换过程自动类型转换的规则:doublefloat

long

unsigned

intchar,short“

”表示必定转换,即:即使同一表达式中的数据类型一致也会发生的转换。如:'a'+'b',先转换为int。结果为int。“

”表示运算对象类型不同时数据的转换方向。如:int型与double型数据混合运算时,int型会转变成double型。自动类型转换强制类型转换的格式:(目标类型)(表达式)对变量进行强制转换后,变量本身的数据类型不变,而是得到一个所

需要类型的数据。应注意的问题:当表达式为单一常量或变量时,表达式两侧的括号()可以省略。如:(double)a;将浮点型数据转换为整型时,系统采用的是直接截断的方式,而不是四舍五入。如:(int)1.6;得到的结果是1,而不是2。如:floatr=3.14;intb;b=(int)r;执行后,r=3.14,b=3。强制类型转换强制类型转换可以利用强制类型转换运算符将一个表达式转换成所需类型:

例如:

(double)a

(将a转换成double类型)

(int)(x+y)

(将x+y的值转换成整型)

(float)(5%3)

(将5%3的值转换成float型)

(int)(1.5+2.3)=3

(int)1.5+2.3=?

强制类型转换已知球的半径r=1.5,求球的体积思考计算体积的结果(10.602875),为什么与数学计算结果(14.137167)不同?通过强制类型转换解决计算误差问题数据类型转换练习:计算下列结果 intx=5;inty=6;floatz=x+y; intx=5;inty=6;intz=x/y; floatx=5.1;floaty=6.4;z=(int)(x+y);字符型

张竞丹深圳信息职业技术学院引言C语言不仅能够处理数值数据(如整型、实型数据),而且能够处理字符型数据(键盘上的各类符号或控制符),字符型同样也分为字符常量和字符变量。12字符型常量字符型变量目录目录12字符型常量1字符型常量字符型变量字符型常量字符常量是用单引号括起来的一个字符

例如:

'a','b','=','+','?'在C语言中,字符常量有以下特点:字符常量只能用单引号括起来,不能用双引号或其它括号;字符常量只能是单个字符,不能是字符串;字符常量'0'~'9'与整型常量0~9是不同的,前者为字符型,在参与数值运算时其数值不是0~9,而是其对应的ASCII码值。字符型常量分析下面程序的执行结果#include<stdio.h>voidmain(){ inta='0'+1; intb=0+1; printf("a=%db=%d\n",a,b);}执行结果:字符型常量转义字符:

一种特殊的字符常量,以反斜线“\”开头,后跟一个或几个字符;转义字符具有特定的含义,不同于字符原有的意义:

例如,'\n'就是一个转义字符,其意义是"回车换行";转义字符主要用来表示那些用一般字符不便于表示的控制代码字符串常量:

由一对双引号括起的字符序列例如:"CHINA","Cprogram:","$12.5"字符串常量和字符常量是不同的量:表现形式:字符常量由单引号括起来,字符串常量由双引号括起来。赋值形式:可以把字符常量赋值给字符变量,但不能把字符串常量赋予字符变量;C语言中没有相应的字符串变量。字符型常量字符串常量和字符常量是不同的量:存储形式:字符常量占一个字节的内存空间;字符串常量占内存字节数等于字符串中字符数加1,增加的字节中存放字符'\0'(ASCII码为0),'\0'是字符串结束的标志。例如:‘a’和“a”是不同的。前者字符常量‘a’占一个字节,表示为字符串常量"a"占二个字节,表示为但在输出时不输出'\0'。字符型常量aa

\0目录12字符型常量2字符型变量字符型变量字符型变量字符变量用来存放字符常量,其定义方法与整型变量定义方法一致:

类型说明符

变量名,变量名,...;字符型变量的类型说明符是char每个字符变量被分配一个字节的内存空间,因此只能存放一个字符。例如:charch1='a';charch2='\n';谢谢您的聆听!Thankyou!实型

张竞丹深圳信息职业技术学院引言科学运算是计算机的重要功能之一,C语言作为人与机器交流的语言,它如何描述数学数据与运算是本章重点讨论的内容,学习过程中重点关注以下问题:

C语言如何定义数学中的整数、实数,相应的描述是否一致?

C语言中有哪些运算符,与数学中的运算符号相比,有什么区别?它是否增加了其它的运算符号?不同类型的数据混合运算是如何实现的?12实型常量实型变量目录目录12实型常量1实型常量实型变量实型常量实型也称为浮点型,实型常量也称为实数或者浮点数。在C语言中,实数只采用十进制,有二种形式:十进制数形式:由数码0~9和小数点组成(必须有小数点)。请判断下列哪些是实数:

0.0

0

.25

25

5.789

0.13

5.0

300.

-267.8230

3实型常量实型也称为浮点型,实型常量也称为实数或者浮点数。在C语言中,实数只采用十进制,有二种形式:指数形式:字母e(或E)之前必须有数字,e后面指数必须为整数如:2.1E5(),3.7e-2(),0.5e7(),-2.8E-2()以下不是合法的实数:

345.

345

E7

-5

53.-E3

2.7E标准C允许浮点数使用后缀,后缀为"f"或"F"即表示该数为浮点数。目录12实型常量2实型变量实型变量实型变量C语言的实型变量的定义方法与整型变量定义方法一致:类型说明符

变量名,变量名,...;实型变量分为三类:单精度型float双精度型double长双精度longdouble实型变量变量必须先定义后使用,定义语句一般放在函数体的开头部分。例如:floatx,y;/*指定标识符x、y为单精度实型量*/doublea,b,c;/*指定标识符a,b,c为双精度实型量*/注意:实型常数默认是双精度double类型,在赋值表达式中可以指定为单精度float类型,例如a=5.2f;一个实型常量可以赋给一个float型或double型变量,并根据变量的类型截取实型常量中相应的有效数字。实型变量已知圆的半径r=1.5,求圆的周长、面积和球的体积(1)数据结构类型题目要求形式语言(C)的表达已知数据半径r1个实型(float)变量:r=1.5输出数据周长c面积s体积v3个实数(float/double)变量:c,s,v实型变量(2)算法已知圆的半径r=1.5,求圆的周长、面积和球的体积算法流程形式语言的表达求周长求面积求体积输出c,s,v以printf函数输出c,s,v结果实型变量(3)执行结果已知圆的半径r=1.5,求圆的周长、面积和球的体积思考(1)为什么v的计算结果(10.602875)与数学中计算结果(14.137167)不同?原因在于4/3=1,整型数据与整型数据相除,结果仍为整数。解决方案:改为4.0/3.0使用强制类型转换(double)4/3(2)变量PI的值在整个程序中未发生改变,是否可声明为符号常量

#definePI3.1415926(3)式s=PI*r*r和v=4/3*PI*r*r*r中r的连乘是否可用数学函数表述

s=PI*sqr(r)和v=4/3*PI*pow(r,3)

其中函数sqr和pow的定义在math.h文件中,在程序开始处需要包含此文件。谢谢您的聆听!Thankyou!整型

张竞丹深圳信息职业技术学院12整型常量整型变量目录目录12整型常量1整型常量整型变量整型常量描述数学中的整数,其整数数值在整个程序运行过程中不允许被改变,如5,3,-1,0等。C语言的整型常量有三种表示形式:十进制:无前导符,编码符号的取值范围为0~9.如321、-380等。八进制:以0前导符开头,编码符号的取值范围为0~7.如0137,即(137)8,等于十进制95。十六进制:以0x前导符开头,编码符号的取值范围为0~F.如0x137,即(137)16,等于十进制311。目录12整型常量2整型变量整型变量整型变量一般形式为:类型说明符变量名标识符,变量名标识符,...;

整型变量可分为以下几类:基本型:以int表示短整型:以shortint或short表示长整型:以longint或long表示无符号型:以unsigned表示整型变量在VS.NET开发工具,以32位机器和对应的32位操作系统为例0-214748364821474836474294967295-3276832767shortint/longunsignedint整型变量在一个笼子里同时养着一些鸡和兔子,其中鸡和兔的总头数16、总脚数40,请计算鸡和兔各多少只?类型题目要求形式语言(C)的表达已知数据鸡与兔总头数h鸡与兔总脚数f2个整型(int)变量:h,f其中h=16,f=40输出数据鸡的数量x兔的数量y2个整型(int)变量:x,y(1)数据结构整型变量在一个笼子里同时养着一些鸡和兔子,其中鸡和兔的总头数16、总脚数40,请计算鸡和兔各多少只?(2)算法:根据题意分析如何计算鸡和兔的只数算法流程形式语言的表达求解根据题意列出下列方程:解方程得:输出以printf函数输出x和y结果整型变量在一个笼子里同时养着一些鸡和兔子,其中鸡和兔的总头数16、总脚数40,请计算鸡和兔各多少只?(3)执行结果注意:C语言中乘法运算与数学中乘法运算在表述上的区别,比如数学中2h表示2×h,而C语言中乘号不可以省略,并以*号表示。总结思考C的数据类型:与数学中的数据类型进行比较C的整型数据类型与数学中整数的区别,在应用中的差异谢谢您的聆听!Thankyou!标识符课前准备标识符在程序中使用的变量名、函数名、标号等统称为标识符。除库函数的函数名由系统定义外,其余都由用户自定义。定义命名规则C规定,标识符只能是字母(A~Z,a~z)、数字(0~9)、下划线(_)组成的字符串,并且其第一个字符必须是字母或下划线。练习:判断下列哪些是合法的标示符

a

-3x

x

3s

_3x

s*T

BOOK_1

bowy-1

sum5课前准备标识符标准C不限制标识符的长度,但它受C语言版本的编译系统、以及具体机器的限制。在标识符中,大小写是有区别的。例如BOOK和book标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号,命名应尽量有相应的意义,以便阅读理解。注意事项x,yrabbit,chickra,ch兔,鸡变量

张竞丹深圳信息职业技术学院23变量的定义关键字目录1标识符目录23变量的定义1变量的定义关键字1标识符变量的定义在程序运行过程中,其值可以改变的量称为变量一个变量应该有一个名字,在内存中占据一定的存储单元,该存储单元中存放变量的值。变量定义的一般形式:类型名变量名;注:变量要先定义、后使用,否则会出现编译错误;变量名遵循标识符命名规则;类型名用来定义变量的数据类型,在编译时按照其类型为其分配相应的存储单元;并检查该变量所进行的运算是否合法;在相同作用域中,不同的变量不能使用相同的变量名。目录23变量的定义2标识符关键字1标识符课前准备标识符在程序中使用的变量名、函数名、标号等统称为标识符。除库函数的函数名由系统定义外,其余都由用户自定义。定义命名规则C规定,标识符只能是字母(A~Z,a~z)、数字(0~9)、下划线(_)组成的字符串,并且其第一个字符必须是字母或下划线。练习:判断下列哪些是合法的标示符

a

-3x

x

3s

_3x

s*T

BOOK_1

bowy-1

sum5课前准备标识符标准C不限制标识符的长度,但它受C语言版本的编译系统、以及具体机器的限制。在标识符中,大小写是有区别的。例如BOOK和book标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号,命名应尽量有相应的意义,以便阅读理解。注意事项x,yrabbit,chickra,ch兔,鸡目录23变量的定义3关键字关键字1标识符关键字关键字是由C语言规定的具有特定意义和用途的字符串,也称为保留字。ANSIC标准规定的关键字有32个。关键字都是小写字母,合法的用户标识符不应与关键字相同。数据类型关键字(12个)int,double,float,charlong,shortsigned,unsignedstructunionenumvoidvoid存储类型关键字(4个)auto,static,register,extern控制语句关键字(12个)for,do,whilebreak,continueswitch,case,defaultif,elsegotoreturn其它关键字(4个)const,volatile,sizeof,typedef谢谢您的聆听!Thankyou!常量

张竞丹深圳信息职业技术学院常量在程序运行过程中,其值不能被改变的量称为常量;

例如:3,-4,1.23,'a',4.6,'d';也可以用一个标识符代表一个常量称为符号常量例如:#definePI

3.1415#define是一个预编译命令注:符号常量的值在其作用域内不能改变,也不可以再被赋值习惯上,符号常量名用大写,变量用小写,以示区别常量趣味小程序之乐曲演奏一:试音程序(1)关于音阶的必备知识:频率与发声:人耳能听到的频率在20--22000Hz左右,一般设定:低音1-7:262,294,330,349,392,440,494中音1-7:523,578,65

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论