第3章_简单程序.ppt_第1页
第3章_简单程序.ppt_第2页
第3章_简单程序.ppt_第3页
第3章_简单程序.ppt_第4页
第3章_简单程序.ppt_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

1、第三章,最简单的c计程仪编程顺序编程计程仪编程、主要内容、 3.1程序的三个基本结构3.2 C语句概要3.3代入式和代入式3.4数据在投入产出概念和习语言中实现主要内容3.5字符数据的投入产出3.6简单格式投入产出3.7比较复杂的投入产出格式控制3.8程序结构计程仪程序设定修改例、3.1程序的三个基本结构, 一个良好的方案由以下三个基本结构组成: (1)顺序结构:各操作步骤依次执行,是最简单的基本结构。3.2 C句的概要、c普拉姆的结构:3.2 C句的概要、 c plum由多个源程序组成源文件由多个函数、预处理命令和全局变量宣言部分组成的函数由函数头和函数主体组成函数主体被分为由数据宣言和执行

2、语句组成的c语句,3.2 C语句的概要(1)控制语句为一定的控制语句else条件句6 break中止语句2 for ()循环语句7 switch ()多分支选择语句3 while ()循环语句8 return回复语句4 do while (); 循环语句9 goto汽车转向系统语句5 continue结束本次循环语句,3.2 C语句概要、3.2 C语句概要、3.3 c语句概要、3.3代入式和代入语句3.3.1代入式、1 .赋值运算符代入符号是赋值运算符,代入语句是在代入式上加上分号而构成的例子: a=3, 将常数分配给变量的说明:将一个表达式的值分配给一个变量,3.3代入式和代入语句3.3.1

3、代入式,复合的赋值运算符与可以在代入子之前加上其他的运算符构成的例子:等价,先修正加法之后分配,3.3代入式和代入语句3.3.1代入a是变量,b是表达式) a =b (将带下划线的“a”移动到“”的示例: x %=y 3 x %=(y 3) |_ x=x %(y 3) (请不要错误地写成x=x % y 3),3.3代入表达式和代入表达式3.3.1代入表达式有关算术运算格子的复合赋值运算符为,*, 语言采用这样的复合运算符,一个是简化项计程仪项、细化项计程仪项,另一个是提高编译效率、生成高质量的营销对象查询密码。3.3代入式和代入文3.3.1代入式、3 .代入式变量和用赋值运算符连接式。 一般形

4、式是变量赋值运算符式代入式的求解过程:先求出赋值运算符右侧的“式”的值,再指定给赋值运算符左侧的变量。 赋值运算符左侧的标识符称为“左值”,赋值运算符右侧出现的表达式称为“右值”。 注:并非所有对象都可以用作左值,表达式和常量都不能用作左值。 任何左值都可以是右值。3.3代入式和代入式3.3.1代入式,说明:因为赋值运算符是“从右向左”的结合顺序,所以“a=(b=5)”和“a=b=5”是等价的例子: a=(b=5)执行“b=5”和“ab”这两个代入式、3.3代入式和代入式3.3.1代入式注意:将代入式作为左边的值时,括弧、3.3代入式和代入语句3.3.1代入式、求解步骤是:先进行*的运算。 这

5、相当于: *,a的值相当于144132。 进而进行“”的运算,相当于:=a (-132 ),a的值为132-132-264。 的双曲馀弦值。 赋值表达式还可以包含复合赋值运算符。 例如: a=a-=a*a、3.3代入式和代入语句3.3.1代入式。 代入式是式的一种,不仅是代入句,在输出句和循环句等其他句子中也表现为式。 例如,打印(% d,a=b ); 3.3代入式和代入文3.3.2代入中的强制类型转换,如果赋值运算符两侧的类型一致则直接进行代入。 例: I=6(假定I定义为int型)赋值运算符两侧的类型不一致,但全部为数值型或字符型时,代入时进行强制类型转换。 自动进行强制类型转换。3.3代

6、入式和代入式3.3.2代入中的强制类型转换、转换规则:将浮点型数据(包含单精度、倍精度)分配给整数变量时,使浮点数值为整数后分配给整数变量。 将整数数据分配给单倍精度变量时,数值不变,但作为浮点数存储在变量中。 将1个double型数据分配给float变量后,截取其前7位的有效数字,保存在float变量的存储单元格(4字节)中。 但是,请注意,如果将一个浮点型数据分配给double变量,则数字不变,有效位数将扩展到16个二进制位,并以8字节存储在内存中。 转换规则:如果将字符类型数据分配给整数变量,则将字符的ASCII查询密码分配给整数变量。 在将字节数多的整数数据分配给字节数少的整数变量/字

7、符变量的情况下,仅将其下位字节原样地发送给变量例: i=289; /*定义的I是整数变量*/c=a; /*已定义c为字符变量*/c=i; 在对相同长度的无符号整数变量分配*/i=289 c=33带符号整数时,直接分配占2字节的int型数据给char型变量。注意:为了避免这种代入,代入后的值可能会产生失真。 进行这样的分配时,需要确认分配后的值不变。 例3.1有符号整数被分配给无符号整数变量,导致数据失真。 包括卷主机()取消标记a; /*定义a是无符号整数变量*/int b; /*定义b是带符号的整数变量*/b=-1; b a=b; a打印机(% un,a ); 执行结果: 429496729

8、5,说明: a是无符号整数变量,所以不使用%d格式输出,而使用输出无符号数的“%u”格式。 例如,将3.2无符号整数分配给有符号的整数变量,并注意数值范围。 包括卷主机()取消标记a; 英特尔; a=65535; /*2字节的16个二进制位都是1 */b=a。 /* b的数值范围为-3276832767 */printf(%dn,b );执行结果-1、说明:在执行“b=a”时,将a的2字节(全部1 )提供给b,因为是有符号整数,所以第1二进制数字表示该数为负数,16二进制位全部1是-1的补数。 转换规则:将无符号整数分配给长度相同的带符号整数变量时,请注意不要超过带符号整数变量的数值范围。 不

9、那样做的话会出错。 3.3代入式和代入句3.3.3代入句。 赋值语句是赋值公式加上分号得到的。 赋值表达式的作用是将表达式的值赋给变量。 赋值公式同时具有修正和赋值功能。 普通话中的修正功能主要通过赋值语句来执行。 语言代入语句与其他高级语言代入语句的区别: (1)语言代入编号“”是运算符,而在其他大多数语言中代入编号不是运算符。 (2)区分代入式和代入句。 其他大多数高级语言没有“代入式”概念。、3.3代入式和代入式3.3.4变量分配初始值,在程序中变量分配初始值的方法,有在定义变量的同时对变量进行初始化(方便)的两种方法,指定为整数变量,初始值为* float f=3.56; *是浮点型变

10、量,初始值为. 56 * char c=a; *指定为字符变量,初始值为a *代入语句,在变量中int a; 指定为整数变量*; 所谓投入产出,是指以计算机主体为主体输出:将数据输入3360从计算机输出到外部输出设备(显视器、打印机)并从输入设备(牛鼻子板、鼠标、扫描仪)投入产出的操作, 由c函数库内函数实现的例如:字符输入函数: getchar字符输出函数:putchar格式输入函数: scanf格式输出函数: printf字符串输入函数:gets字符串穿透输出函数:puts, 3.4数据投入产出的概念和习语言实现,(3) .使用系统库函数时,使用预编译命令“#include”将关联的“头文

11、件”包含在用户源文件中。 例如,调用标准投入产出库函数时,文件的开头应该是#include “stdio.h”或: #include、头文件、3.4数据投入产出的概念和习语言实现、3.5字符数据的投入产出3.5 .通常的格式是putchar(c ) 包括卷主机()卡片a、b、c; a=B; b=O; c=Y; putchar(a ); putchar(b ); putchar(c ); putchar(n ); 运行结果: BOY、putchar(a ); putchar(n ); putchar(b ); putchar(n ); putchar(c ); putchar(n ); 运行结果

12、: B O Y,3.5字符数据的投入产出3.5.2getchar函数输入1个字符,getchar函数(字符输入函数)的作用是从计算机终端输入1个字符。 getchar函数没有残奥元,一般格式为getchar (),函数值是从输入解老虎钳得出的字符,示例3.4是输入一个字符。 包括卷主机()卡片c; c=getchar (); putchar(c ); putchar(n ); 3.6简单格式投入产出3.6.1使用简单的printf函数输出数据,而printf函数(格式输出函数)的作用是向终端(或系统隐式指定的输出数据老虎钳)输出多种类型的数据。 printf函数的一般格式是printf (格式

13、控制,输出表列)示例: printf(”%d,%cn”,I,c ),用于3.6简单格式投入产出3.6.1的简单printf格式说明。 格式说明由“”和格式字符(、等)组成。 它将输出的数据转换为指定的格式输出。 格式说明始终以“”字母开头。 普通文字。 普通文字是必须直接输出的文字。 例如,上述printf函数的双撇号中的逗号、空格、换行符等。 (2)“输出表列”是需要输出的数据的一部分,是常数、变量、公式中的任意一个。 3.6简单格式投入产出3.6.1以简单的printf函数输出数据,printf函数示例: printf(“a=%d b=%d”,a,b) | | | | |格式以十进制整数数

14、据的实际长度输出数据。 I格式符号。 角色与格式相同,以十进制整数类型数据的实际长度输出。 一般习惯使用%d,不使用%i。 的双曲馀弦值。 用于输出文字。 的双曲馀弦值。 值在范围内的整数也可以在中作为文字输出。 例3.5文字数据的输出。 包括卷主机() char c=a; 英寸=97; 打印机(% c、%dn、c、c ); 打印机(% c、%dn、I、I ); 执行结果:格式符号。 输出字符串。例如: printf (,n ); 输出字符串“n”(双引号除外)的格式符号。 用于输出实数(包括单精度、双精度),以小数形式输出。 不指定整个字段的长度,而是由系统自动指定。 典型的处理方法是输出所

15、有整数部分并输出小数点后的位数。 3.6简单的格式投入产出3.6.1以简单的printf函数输出数据。 注:并非输出数字中的所有数字都是有效数字。 单精度实数的有效位数一般为6-二进制位,倍精度实数的有效位数一般为15-16二进制位。 例3.6实数输出时的有效位数。 包括音频主机()浮点x,y; x=111111.111; y=222222.222; 打印机(% fn,x y ); 执行结果:结果中只有前7位是有效数字。 因为x和y是单精度变量,所以x和y也只能保证7位的精度,低位没有意义。 输出例3.7倍精度数时的有效位数。 包括卷主机()双双x,y; x=11111111.11111111; y=22222222.22222222; 打印机(% fn,x y ); 运行结果: 33333333.33333,x和y为双精度变

温馨提示

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

评论

0/150

提交评论