C语言(第四章顺序程序设计1).ppt

上传人:牧羊曲112 文档编号:6503682 上传时间:2023-11-07 格式:PPT 页数:27 大小:344.99KB
返回 下载 相关 举报
C语言(第四章顺序程序设计1).ppt_第1页
第1页 / 共27页
C语言(第四章顺序程序设计1).ppt_第2页
第2页 / 共27页
C语言(第四章顺序程序设计1).ppt_第3页
第3页 / 共27页
C语言(第四章顺序程序设计1).ppt_第4页
第4页 / 共27页
C语言(第四章顺序程序设计1).ppt_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《C语言(第四章顺序程序设计1).ppt》由会员分享,可在线阅读,更多相关《C语言(第四章顺序程序设计1).ppt(27页珍藏版)》请在三一办公上搜索。

1、第四章 顺序程序设计,4.1 C语句概述,C程序:可由若干源程序文件组成,一个源文件可由若干函数和预处理命令及全局变量声明部分组成。函数包括 声明部分:指出数据结构,定义数据类型。执行部分:由语句组成,称数据操作,对提供的数据进行加工。,C程序组成的示意图,C语言提供的语句分五大类:,控制语句,完成控制功能 函数调用语句 表达式语句 空语句(5)复合语句,C语言提供的语句分五大类,(1)控制语句,完成控制功能 if()else 条件 for()循环 while()循环 do while()循环 continue 结束本次循环 break 中止switch 或循环 switch 多分支选择 go

2、to 转向 return 从函数返回,(2)函数调用语句 函数名(参数);如:printf(“This is a C program.n”);max(a,b);(3)表达式语句 在表达式后加“;”构成 a=6 a=5;如 i=i+2 表达式 而 i=i+2;表达式语句 x+y x+y;(4)空语句;无任何操作,但合法,可用于循环中的转折,(5)复合语句 用 将若干语句括起来而构成的语句。如:if(xy)与 if(xy)意义不同 z=x;x+;z=x;y-;x+;y-;,1、赋值运算符“=”是赋值号,也是赋值运算符 功能:将赋值号右边表达式值赋给赋值号左边的变量,赋值 号同时含有计算的功能。如:

3、a=3;b=x*y;a,b变量中原来不管存放什么值,执行赋值语句后,新值将取代旧值,4.2 赋值运算符和赋值表达式,在赋值号前加其它运算符,可以构成复合运算符。如:a=a+b a+=b x=x*(y+8)x*=y+8 x=x%3 x%=3 为了便于记忆,将赋值号左边移到赋值号右边,赋值号左边再 补上变量名。如:a+=b a+=(b)a=a+b,其中a是变量,b是表达式 x*=y+8 x*=(y+8)x=x*(y+8)在C语言中,有十个二元运算符:+、-、*、/、%、&、|可与赋值号一起构成复合运算符;其优点是:简化程序,提高编译效率。,2、复合的赋值运算符,由赋值运算符将一个变量和一个表达式连

4、接起来的式子。(1)一般形式:(2)赋值表达式求解过程 计算赋值号右边表达式的值,然后赋给左边的变量。如:a=3+5 在C语言中,表达式又可以是赋值表达式,如a=(b=5);其中 b=5是赋值表达式,其值是5,因此a的值是5,整个表达式的值是5。,3、赋值表达式,赋值运算符的结合顺序:从右向左 因此:a=(b=5)与 a=b=5 是等价的。例:a=b=c=5 表达式的值为5,a,b,c的值为5。a=5+(c=6)表达式的值为11,a的值为11,c的值为6。a=(b=4)+(c=6)表达式的值为10,a的值为10,b为4,c为6。a=(b=10)/(c=2)表达式的值为5,a的值为5,b为10,

5、c为2。,赋值表达式也可以包含复合的赋值运算符 main()int a=12,b;b=(a+=a-=a*a);printf(“a=%d,b=%dn”,a,b);运算结果:a=-264,b=-264,4.3 赋 值 语 句,前已说到,赋值语句是由赋值表达式加上一个分号构成。C语言的赋值语句具有其它高级语言中赋值语句的一切特点和功能,但也应当注意到它们的不同:C语言中的赋值号“=”作为赋值运算符;作为赋值表达式可以被包括在其它表达式之中,例如 if(ab)0)ta;,变量类型的不同,所接收的数据也是不同的,当赋值运算符两侧的数据类型不一致时,在赋值时要进行类型转换(1)实型数据赋给整型变量时,舍去

6、实型数据的小数部分 如:int i;i=3.56;(2)整型数据赋给实型变量时,数值不变,但以浮点形式 存放于内存。(3)double型数据赋给float变量,截取7位有效数字存放float单元,应注意数值溢出(4)字符型数据赋给整型变量 无符号字符型赋给整型量:将其存放在整型变量的低8位中,而高位以0补齐 带符号字符型赋给整型量时若最高位为1(负数),则整型变量的高8位补1,若最高位为0(正数),则整型变量高8位补0。(5)int,short,long型数据赋给char变量,则将其低位赋给char型变量(6)long型数据赋给int型变量,将long型数据的低16位赋给int型变量(7)将u

7、nsigned int型数据赋给 long 型变量时 将unsigned short型数据送到long int型变量的低16位,longint的变量高16位补0 若无符号数据赋给相同长度的带符号的变量,则原样赋给。(8)将带符号的数赋给长度相同的无符号变量,4、类型转换问题,2、类型转换(1)实型数据赋给整型变量时,舍去实型数据的小数部分 如:int i;i=3.56;结果i的值为3(2)整型数据赋给实型变量时,数值不变,但以浮点形式 存放于内存。如:float a=23;先将23转换成23.000000,然后送a中 double b=23;先将23转换为23.00000000000000,然

8、后送b中,(3)double型数据赋给float变量 截取其前面的7位有效数字,存放到float单元,应注意数值 范围不能溢出,如:float f;double d=123.45678e65;f=d;由于数据溢出,f将得到错误的值 float 数据赋给double变量时,数值不变,有效位扩展到16位。,(4)字符型数据赋给整型变量 字符数据占一个字节,整型数据占两个字节,字符数据存入整型变量的低8位,有两种情况:无符号字符型数据赋给整型变量时:将其存放在整型变量的低8位中,而高位以0补齐,main()int i;unsigned char c;c=376;i=c;printf(“i=%d,c=

9、%dn”,i,c);结果:i=254 c=254,带符号的字符型数据赋给整型变量时 若最高位为1(负数),则整型变量的高8位补1,若最高位为0(正数)则整型变量高8位补0。例T3-8-9.c main()int i;char c;c=376;i=c;printf(“i=%d,c=%dn”,i,c);运行结果:i=-2,c=-2,(5)int,short,long型数据赋给char变量,则将其低位赋给char型变量 例T3-8-10.cmain()int i=289;char c;c=i;printf(“i=%d,c=%d,c=%c n”,i,c,c);运算结果:i=289,c=33,c=!,(

10、6)long型数据赋给int型变量,将long型数据的低16位赋给int型变量 例T3-8-11.c main()short a;long b=65544;a=b;printf(a=%d,b=%ldn,a,b);运算结果:a=8,b=65544,a=8,符号位,b=65544,(7)将unsigned int 型数据赋给 long 型变量时 将unsigned short 型数据送到 long int 型变量的低16位,long int的变量高16位补 0例T3-8-12 main()unsigned a=65535;long b;b=a;printf(a=%u,b=%ldn,a,b);,输出

11、:a=65535,b=65535,unsigned int int unsigned short short int unsigned long long int 要注意数据的有效位占据符号位 例T3-8-13.c main()unsigned int a=65535;int b;b=a;printf(“a=%u,b=%dn”,a,b);运算结果:a=65535,b=-1,若无符号数据赋给相同长度的带符号的变量,则原样赋给。,(8)将带符号的数赋给长度相同的无符号变量 过程:原样赋给 例T3-9.c main()unsigned int a;int b=-1;a=b;printf(“a=%u,

12、b=%dn”,a,b);,1,1,a,b,符号位,数值位,运算结果:a=65535,b=-1,4.3数据输入输出概念及在C语言中的实现,数据的输入输出设备 键盘,鼠标,显示器,打印机C语言本身不提供输入输出语句,由输入输出函数来实现的。在C的标准函数库中(stdio.h)提供了一些输入输出函数getchar(),putchar(),printf(),scanf()使用上述库函数时,需要使用预编译命令,在主函数的前面加上如下语句#include#include“stdio.h”,4.4 字符数据的输入输出,两个简单的字符输入输出函数 getchar()putchar()使用前提,在主函数的前面加

13、上如下语句#include 或#include“stdio.h”4.4.1 putchar()函数(字符输出函数)格式:putchar(char c);c可以是字符常量或字符变量 用途:向输出设备输出一个字符,include“stdio.h”main()char a,b,c;a=”B”;b=O;c=Y;putchar(a);putchar(b);putchar(c);运行结果:BOY如果将例程最后一行改为 putchar(a);putchar(n);putchar(b);putchar(c);则输出结果为:B O Y,4.4.1 putchar()函数(字符输出函数),getchar()函数(数据输出函数)格式:getchar();用途:向输出设备输出一个字符说明:getchar()只能接收一个字符。getchar函数得到的字符可以赋给一个字符变量或整型变量,也可以下赋给任何变量,作为表达式的一部分。例题:include“stdio.h”main()char c;c=getchar();putchar(c);可以将程序中语句改为:putchar(getchar();,4.4.2 getchar()函数,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号