C语句的作用和类型.docx

上传人:王** 文档编号:660273 上传时间:2023-12-08 格式:DOCX 页数:11 大小:23.59KB
下载 相关 举报
C语句的作用和类型.docx_第1页
第1页 / 共11页
C语句的作用和类型.docx_第2页
第2页 / 共11页
C语句的作用和类型.docx_第3页
第3页 / 共11页
C语句的作用和类型.docx_第4页
第4页 / 共11页
C语句的作用和类型.docx_第5页
第5页 / 共11页
C语句的作用和类型.docx_第6页
第6页 / 共11页
C语句的作用和类型.docx_第7页
第7页 / 共11页
C语句的作用和类型.docx_第8页
第8页 / 共11页
C语句的作用和类型.docx_第9页
第9页 / 共11页
C语句的作用和类型.docx_第10页
第10页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C语句的作用和类型.docx》由会员分享,可在线阅读,更多相关《C语句的作用和类型.docx(11页珍藏版)》请在优知文库上搜索。

1、C语句的作用和类型C语句的作用和C语句分类一个函数包含声明部分和执行部分,执行部分是由语句组成的,语句的作用是向计算机系统发出操作指令,要求执行相应的操作。一个C语句经过编译后产生若干条机器指令。声明部分不是语句,它不产生机器指令,只是对有关数据的声明。一个C程序可以由若干个源程序文件(编译时以文件模块为单位)组成,一个源文件可以由若干个函数和预处理指令以及全局变量声明部分组成。一个函数由数据声明部分和执行语句组成。C语句分为以下5类。(1)控制语句。控制语句用于完成一定的控制功能。C语言只有9种控制语句,它们的形式是:(条件语句)if().else.(循环语句)for().(循环语句)whi

2、le().(循环语句)do.while()(结束本次循环语句)continue(中止执行switch或循环语句)break(多分支选择语句)switch(从函数返回语句)return(转向语句,在结构化程序中基本不用goto语句)goto上面9种语句表示形式中的(表示括号中是一个判别条件,表示内嵌的语句。例如上面的if()else的具体语句可以写成if(Xy)z=x;elsez=y;其中,xy是一个判别条件,z=X,和Z=y是C语句,这两个语句是内嵌在if.else语句中的。这个if.else语句的作用是:先判别条件Xy是否成立,如果Xy成立,就执行内嵌语句z=X,否则就执行内嵌语句z=y。选

3、择结构语句if语句if(条件)语句1;else语句2;if(条件)复合语句;else语句2;if嵌套if(条件D语句1;elseif(条件2)语句2;elseif(条件3)语句3;elseif(条件4)语句4;条件表达式条件?表达式1:表达式2C语言中唯一的三目运算。SWitCh语句switch(整型)case常量:语句1;break;case常量:语句2;break;case常量:语句3;break;default:语句n;(2)函数调用语句。由一个函数调用加一个分号构成,例如printf(ThisisaCstatement其中printf(nThisisaCstatement.)是一个函数

4、调用,加一个分号成为一个语句。(3)表达式语句。表达式语句由一个表达式加一个分号构成,最典型的是由赋值表达式构成一个赋值语句。例如a=3是一个赋值表达式,一个表达式的最后加一个分号就成了一个语句。一个语句必须在最后有一个分号,分号是语句中不可缺少的组成部分,而不是两个语句间的分隔符号。任何表达式都可以加上分号而成为语句,例如;i+;是一个语句,作用是使i值加IoXy;所以它并无实际意义,没有赋值给其他变量。表达式能构成语句是C语言的一个重要特色。其实函数调用语句也属于表达,因为函数调用(如Sin(X)也属于表达式的一种。只是为了便于理解和便用,才把函调用语句和表达式语句(不带函数的语句)分开来

5、说明。(4)空语句。一个空语句只有一个分号。可以用来作为流程的转向点(从程序其他地方转到此语句处,或预留端口),也可用来作为循环语句中的循环体(循环体是空语句,表示循环体什么也不做)。(5)复合语句。把一些语句和声明括起来成为复合语句。/定义变量floatpi=314159zr=2.5zarea;area=pi*r*riprintf(area=%fzarea);可以在复合语句中包含声明部分,习惯上把它放在语句块开头位置。复合语句常用在if语句或循环中,此时程序需要连续执行一组语句,复合语句中最后一个语句末尾的分号不能忽略不写。最基本的语句一一赋值语句C程序最常用的语句是:赋值语句和输入输出语句

6、。其中最基本的是赋值语句。程序中的计算功能大部分是由赋值语句实现的,几乎每一个有实用价值的程序都包括赋值语句。在安排输出时,常用t来调整输出的位置,使输出的数据整齐、美观。以后凡在程序中要用到数学函数库中的函数,都应当在本文件的开头包含math.h头文件。赋值有关的一些问题。1.赋值运算符赋值符号=就是赋值运算符,将一个数据赋给一个变量。如a=3的作用是执行一次赋值操作,把常量3赋给变量ao也可以将一个表达式的值赋给一个变量。2.复合的赋值运算符在赋值符=之前加上其他运算符,可以构成复合的运算符。如果在=前加一个达算符就成了复合运算符+=。如:a+=3等价于a二十3X*=y+8等价于x=x*(

7、y+8)3.赋值表达式赋值语句是在赋值表达式的末尾加一个分号构成的。由赋值运算符将一个变量和一个表达式连接起来的式子称为赋值表达式。它的一般形式为:变量赋值运算符表达式赋值表达式的作用是将一个表达式的值赋给一个变量,因此赋值表达式具有计算和赋值的双重功能。如a=3*5是一个赋值表达式。对赋值表达式求解的过程是:先求赋值运算有右侧的表达式的值,然后赋给赋值运算符左侧的变量。既然是一个表达式,就应该有一个值,表达式的值等于赋值后左侧变量的值。如:赋值表达式a=3*5z对表达式求解后,变量a的值和表达式的值都是15o赋值运算符左侧应该是一个可修改值的左值(leftvalue)o左值的意思是它可以出现

8、在赋值运算符的左侧,它的值是可以改变的。并不是任何形式的数据都可以作为左值的,左值应当有存储地址空间并可以被赋值。变量可以作为左值,而算术表达式ab就不能作为左值,常量也不能作为左值,因为常量不能被赋值,没有存储地址。能出现在赋值运算符右侧的表达式称为右值(rightvalue)o显然左值也可以出现在赋值运算符右侧,可以作为右值。赋值表达式中的表达式又可以是一个赋值表达式。如:a=(b=5)括号内的b=5是一个赋值表达式,它的值等于5o执行表达式a=(b=5)就是执行b=5和a=b两个赋值表达式。因此a的值等于5,整个赋值表达式的值也等于5。赋值运算符按照自右而左的结合顺序,因此,(b=5)外

9、面的括号可以不要,即a=(b=5)和a=b=5等价,都是先求b=5的值,然后再赋给ao把赋值表达式作为表达式的一种,使得赋值操作不仅可以出现在赋值语句中,而且可以以表达式的形式出现在其他语句中(如输出语句、循环语句等),如printf(*%d,a=b);如果b的值为3,则输出a的值(也是表达式a=b的值)为3。在一个printf函数中完成了赋值和输出双重功能。4,赋值过程中的类型转换如果赋值运算符两侧的类型一致,则直接进行赋值。如果赋值运算符两侧的类型不一致,但都是基本类型时,在赋值时要进行类型转换,转换的规则:1)将浮点型数据(包括单,双精度)赋给整型变量时,先对浮点数取整,即舍弃小数部分,

10、然后赋予整型变量。(2)将整型数据赋给单,双精度变量时,数值不变,但以浮点数形式存储到变量中。(3)将一个double型数据赋给float变量时,先将双精度数转换为单精度,即只取67位有效数字,存储到float型变量的4个字节中。注意双精度数值的大小不能超出float型变量的数值范围。将一个float型数据赋给double型变量时,数值不变,在内存中以8个学节存储.有效位数扩展到15位。(4)字符型数据赋给整型变量时,将字符的ASCII代码赋给整型变量。(5)将一个占字节多的整型数据赋给一个占字节少的整型变量或学符变量(如:把4个字节的int型数据赋给占2个字节的short变量或占1个学节的C

11、har变量)时,只将低字节原封不动地送到被赋值的变量(即发生截断要避免把占字节多的整型数据向占字节少的整型变量赋值,因为赋值后数值可能发生失真。如果一定要进行这种赋值,应当先保证赋值后数值不会发生变化,即所赋的值在变量的允许数值范围内。只要知道整型数据之间的赋值,存储单元中的存储形式直接传送。实型数据之间以及整型与实型之间的赋值,是先转换(类型)后赋值。5 .赋值表达式和赋值语句在C程序中,赋值语句是用得最多的语句。C语言的赋值语句属于表达式语句,由一个赋值表达式加一个分号组成。在一个表达式中可以包含另一个表达式。赋值表达式既然是表达式,那么它就可以出现在其他表达式之中。如:if(a=b)0)

12、max=a;先进行赋值运算(将b的值赋给a).然后判断a是否大于O,如大于O,执行max=ao请注意,在if语句中的a=b不是赋值语句未带分号,而是赋值表达式。在if的条件中可以包含赋值表达式,但不能包含赋值语句。注意区分赋值表达式和赋值语句。赋值表达式的末尾没有分号,而赋值语句的末尾必须有分号。在一个表达式中可以包含一个或多个赋值表达式,但绝不能包含赋值语句。6 .变量赋初值:用赋值语句对变量赋值,也可以在定义变量时对变量赋以初值,如:inta=3指定a为整型变量,初值为3floatf=3.56;指定f为浮点型变量,初值为3.56charc=,a;Il指定c为字符变量,初值为a也可以使被定义的变量的一部分赋初值。如:inta,b,c=5;指定a,b,c为整型变量,但只对c初始化,C的初值为5o如果对几个变量赋予同一个初值,应写成表示a,b,c的初值都是3。不能写成inta=b=c=3;定义时不能这么做,单独赋值语句可以这么做。赋值可以单独出现,不能与变量被定义时写在一起。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > C/C++资料

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!