第3章简单顺序程序设计.ppt

上传人:本田雅阁 文档编号:3427013 上传时间:2019-08-24 格式:PPT 页数:86 大小:799.04KB
返回 下载 相关 举报
第3章简单顺序程序设计.ppt_第1页
第1页 / 共86页
第3章简单顺序程序设计.ppt_第2页
第2页 / 共86页
第3章简单顺序程序设计.ppt_第3页
第3页 / 共86页
第3章简单顺序程序设计.ppt_第4页
第4页 / 共86页
第3章简单顺序程序设计.ppt_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《第3章简单顺序程序设计.ppt》由会员分享,可在线阅读,更多相关《第3章简单顺序程序设计.ppt(86页珍藏版)》请在三一文库上搜索。

1、C语言程序设计,钱苏斌 ,第3章 简单顺序程序设计,3.1 顺序程序设计示例 3.2 数据的表示形式及其运算 3.3 C语句的作用及其分类 3.4 运算符与表达式 3.5 数据的输入和输出,3.1 顺序程序设计举例,例3.1 有人用温度计测量出用华氏法表示的温度(如 69F ),今要求把它转换为以摄氏法表示的温 度(如20 C) 。,解题思路:找到二者间的转换公式,f代表华氏温度,c代表摄氏温度。,算法:,N-S图,#include int main ( ) float f,c; f=64.0; c=(5.0/9)*(f-32); printf(“f=%fnc=%fn“,f,c); retur

2、n 0; ,/定义f和c为单精度浮点型变量,/指定f的值,/计算c的值,/输出f和c的值,例3.2 计算存款利息。有1000元,想存一年。有三 种方法可选: (1)活期,年利率为r1; (2)一年期定期,年利率为r2; (3)存两次半年定期,年利率为r3; 请分别计算出一年后按三种方法所得到的本息和。,解题思路:确定计算本息和的公式。 从数学知识可知:若存款额为p0,则: 活期存款一年后本息和为: p1=p0(1+r1) 一年期定期存款,一年后本息和为: p2=p0(1+r2) 两次半年定期存款,一年后本息和为:,算法:,#include int main ( ) float p0=1000,

3、 r1=0.0036,r2=0.0225, r3=0.0198, p1, p2, p3; p1 = p0 * (1 + r1); p2 = p0 * (1 + r2); p3 = p0 * (1 + r3/2) * (1 + r3/2); printf(”%fn%fn%fn”,p1, p2, p3); return 0; ,定义变量同时赋予初值,3.2 数据的表现形式及其运算,3.2.1 常量和变量 3.2.2 数据类型 3.2.3 整型数据 3.2.4 浮点型数据 3.2.5 字符型数据 3.2.6 怎样确定常量的类型 3.2.7 运算符和表达式,3.2.1 常量和变量,1.常量:在程序运行

4、过程中,其值不能被改变的量。 整型常量:如1000,12345,0,-345 实型常量 十进制小数形式:如0.34 -56.79 0.0 指数形式:如12.34e3 (代表12.34103) 字符常量:如? 转义字符:如n 字符串常量:如”boy” 符号常量:#define PI 3.1416,2. 变量:在程序运行期间,变量的值是可以改变 的。 变量必须先定义,后使用; 定义变量时指定该变量的名字和类型; 变量名和变量值是两个不同的概念; 变量名实际上是以一个名字代表的一个存储地址; 从变量中取值,实际上是通过变量名找到相应的内存地址,从该存储单元中读取数据。 3. 常变量:const in

5、t a=3;,常量值固定 (存放于静态数据区),常量值不固定 (存放于动态数据区),内存地址,6600:0015H,6600:0016H,6600:0018H,6600:001AH,6600:001CH,6600:001DH,6600:001FH,6600:0020H,6600:0021H,如:float a; (float型数据占4个字节,系统分配了连续的4个字节空间,并给他们起了个名字a,用户无需关心真实地址),注:变量中总是存放最新的值(最后一次的值),6600:0017H,6600:0019H,6600:001BH,6600:001EH,状态,4. 标识符:标识符是用户自行定义的符号,

6、用来标识常量、变量、函数、标号等。 C语言中规定,所有的符号必须先定义或者说明后才能使用。 ANSI C规定:标识符是由字母或者下划线“_”开头,字母、数字、下划线的任意组合,在Turbo C中长度不能超过32个字符。例如:下面的标识符是合法的: count _cs num_day i 而下面的标识符是不合法的: 2count b-a abc a#b,在C语言中,标识符的命名有一定的规则,在命名标识符时应该注意一下问题: (1) 标识符只能由字母、数字和下划线三类字符组成; (2) 第一个字符必须是字母或者是下划线; (3) 大写字母和小写字母被认为是两个不同的字符,如A和a是两个不同的标识符

7、; (4) 标识符可以任意长,但只有前32位有效; (5) 标识符不能是C的关键字; (6) 一般情况下,大写字母用来表示常量标识符,变量等其他标识符用大小写字母组合或者小写字母表示;在用户给标识符起名时,最好选择相应意思的英文单词、拼音或者它们的缩写,这样可以增加程序的可读性。,3.2.2 数据类型,在程序设计中,所有在程序中使用的数据都应该属于某一种数据类型,不同数据类型的数据的差异在于: (1)在内存中占据的存储单元的长度不同(占多少字节) ; (2)对应不同的取值范围; (3)对应着不同的一些所允许的操作。,数据类型,基本类型,构造类型,指针类型(),空类型(void),字符型(cha

8、r),数值类型,枚举类型(enum),数组类型( ),结构体类型(struct),共用体类型(union),整型(short,int,long,unsigbed),实型,单精度型(float),双精度型(double),C语言中为我们提供以下几种数据类型,3.2.3 整型数据,1. 整型数据的分类 最基本的整型类型 基本整型(int型):占2个或4个字节 短整型(short int):VC+6.0中占2个字节 长整型(long int):VC+6.0中占4个字节 双长整型(long long int):C99新增的,2. 可以将变量定义为“无符号”类型,扩充的整形类型: 有符号基本整型 sig

9、ned int; 无符号基本整型 unsigned int; 有符号短整型 signed short int; 无符号短整型 unsigned short int; 有符号长整型 signed long int; 无符号长整型 unsigned long int 有符号双长整型 signed long long int; 无符号双长整型 unsigned long long int,如果不指定unsigned或signed,则存储单元中最高位代表符号(0为正,1为负)。 如果指定unsigned,为无符号型,存储单元中全部二进位(bit)用作存放数本身,而不包括符号。 无符号型变量只能存放不带

10、符号的整数,如123、4687等,而不能存放负数,如-123、-3。一个无符号整型变量中可以存放的正数的范围比一般整型变量中正数的范围扩大一倍。,符号的概念:,取值范围:,某类型数据占内存m个bit,计算公式: signed型:-2m-1,2m-1-1 unsigned型:0,2m-1,如: int型: -215, 215 1 =-32768,32767 unsigned int型: 0, 216 -1=0,65535,补码,如果在程序中定义a和b两个变量: int a; 变量a的数值范围为-3276832767 unsigned int b; 变量b的数值范围为065535 图 (a) 表示

11、有符号整型变量a的最大值(32767)。图 (b) 表示无符号整型变量b的最大值(65535)。,3.2.4 浮点型数据,浮点型数据是用来表示具有小数点的实数。,float型(单精度浮点型) 编译系统为float型变量分配4个字节 数值以二进制数指数形式存放在内存单元中 (参见主教材图3.11) double型(双精度浮点型) 编译系统为double型变量分配8个字节 15位有效数字,下表2_3表示浮点型数据所占内存大小和数据范围:,例如: 123.456可以表示为: 123.456e0, 12.3456e1, 1.23456e2, 0.123456e3, 0.0123456e4, 其中的1.

12、23456e3称为“规范化的指数形 式”。 在字母e(或E)之前的小数部分中,小数点左边应有 一位(且只能有一位)非零的数字。,规范化的指数形式:,在常用的微机系统中,一个实型数据在内存中占4个 字节(32位)。实型数据是按照指数形式存储的。系 统把一个实型数据分成小数部分和指数部分,分别 存放。,浮点型数据在内存中的存放形式:,符号位决定浮点数的正负,0正1负。 指数和尾数均从浮点数的二进制科学计数形式中获取。 例如:十进制浮点数2.5: 二进制形式:10.1, 科学计数法形式:(1.01)*(101), 规范化的指数形式:1.01e1 由此可知:符号位为0,指数为1,尾数为01。,符号位

13、指数 尾数 0 0000 0001 010 0000 0000 0000 0000 0000,3.2.5 字符型数据,字符型在C语言中用char表示,占内存存储空间1个字节,一般用8位二进制数据表示一个字符,实际上这8位二进制数表示该字符的ASCII码值,因此字符型数据整型数据关系密切,可把字符型看作一种特殊的整型,它和整型数据之间可以混合使用。,将一个字符常量放到一个字符变量中,实际上并不是把该字符本身放到内存单元中去,而是将该字符的相应的ASCII代码放到存储单元中。 例如字符a的ASCII代码为97,b为98,在内存中变量c1、c2的值如图 (a)所示。实际上是以二进制形式存放的,如图

14、(b)所示。,1.字符与字符代码 大多数系统采用ASCII字符集 字母:A Z,a z 数字:09 专门符号:29个:! ” # & ( ) *等 空格符:空格、水平制表符、换行等 不能显示的字符:空(null)字符(以0表示)、警告(以a表示)、退格(以b表示)、回车(以r表示)等,字符1和整数1是不同的概念: 字符1只是代表一个形状为1的符号,在需要时按原样输出,在内存中以ASCII码形式存储,占1个字节; 整数1是以整数存储方式(二进制补码方式)存储的,占2个或4个字节,2.字符变量 用类型符char定义字符变量 char c = ? 系统把?的ASCII代码63赋给变量c printf

15、(”%d %cn”,c,c) 输出结果是: 63 ?,常量是指在程序运行过程中其值不能被改变的量。 在C语言中常量包括数值型常量(包括整型常量和 浮点型常量)、字符型常量、符号常量,还有字符 串常量、转义字符常量和地址常量等。,3.2.6 怎样确定常量的类型,(一) 整型常量 整型常量也称为整常量,是由一个或者多个数字组 成,可以带正、负号。整型常量在程序中可以有多 种表示形式: 以数字o开头由07组成的为八进制数据; 以ox或者OX开头由09和AF或者(af)组成的为十六进制数据; 其余的为十进制数据。,3.2.6 怎样确定常量的类型,(二) 浮点常量 浮点常量用来表示带有小数的数据,也称实

16、型常量, 在程序中使用时可以采用两种表示形式,一种是十进 制形式,一种是指数形式。 如:3.14 -123.456 1.3E5 2.8e-3都是合法的浮点常 量;前两个是十进制形式,后两个是指数形式,分别 相当于1.3105和2.8103 。 要注意的是:指数形式的浮点常量E或者e前面必须 有数字,后面必须为整数。因此这些形式都是不合法 的浮点常量,如: E3 2E6.5 等。,(三) 字符常量 字符常量是采用一对单引号括起来的一个单字符, 其中的单引号只起定界作用。如:A 、b,它们 分别表示大写字母A和小写字母b。 一个字符常量的值就是该字符对应的ASCII值(字 符的ASCII值可以参考

17、附录中的ASCII表)。 除了正常形式的字符常量外,还有一些特殊形式的 字符常量,就是以开头的转义字符,它们具有特 殊的含义。常用的以开头的转义字符如下表所示:,在C语言中使用字符常量时应该注意: (1) 字符常量只能用单引号括起来,不能用双引号或其它括 号; (2) 字符常量只能是单个字符,不能是字符串; (3) 字符可以是字符集中的任意字符,但数字被定义为字符之 后就不能直接参与数值运算,例如:8与8是不同的,前者是 字符常量,不能直接参与运算,后者是整型数值常量,可以 直接参与数值运算。,思考下面程序段输出的结果是什么? #include main() char ch; ch = 8;

18、printf(“char ch is:%cn“, ch); /*以字符形式输出*/ printf(“char chs ASCII code:%dn“, ch); /*以十进制整数形式输出*/ ,(四) 字符串常量 字符串常量是用一对双引号括起来的零个、一个或者多 个字符序列,。如:“I am a teacher. “ 。 一个字符常量在内存中占一个字节的存放空间,字符串 常量在内存中所占的存储空间长度等于字符串中所有字符 数加1,多一个长度是因为编译程序会自动的在每个字符串 的末尾添加一个字符串结束标志0。,对于字符串常量,应该注意:字符常量和字符串 常量不同,如:A和“A”是不同的。“A”是

19、一个 字符串常量,其由A和0两个字符常量构成。 如果有一个字符串“CHINA”,实际上在内存中 是: C H I N A 0 它的长度不是5个字符,而是6个字符,最后一个 字符为0。但在输出时不输出0。,(五) 符号常量 符号常量:用符号代替直接的数字表示的常量。 定义符号常量的一般形式: #define 标识符 常量 其中,#define称为宏定义命令,其功能是把该 标识符定义为其后的常量值。一经定义,在程序 中出现该标识符的地方均会被该常量取代。 例如:#define PI 3.14.5926,3.2.7 运算符和表达式,+ :正号运算符(单目运算符) - :负号运算符(单目运算符) *

20、:乘法运算符 / : 除法运算符 % :求余运算符 + :加法运算符 - :减法运算符,1. 基本的算术运算符:,说明 两个整数相除的结果为整数 如5/3的结果值为,舍去小数部分; 如果除数或被除数中有一个为负值,舍入方向不固定。例如,-5/3,有的系统中得到的结果为-1,在有的系统中则得到结果为-2; VC+采取“向零取整”的方法,如5/3=1, -5/3= -1,取整后向零靠拢; % 运算符要求参加运算的运算对象(即操作数)为整数,结果也是整数。如8%3,结果为2,作用是使变量的值加或减 +i,-i:在使用i之前,先使i的值加(减)1 i+,i-:在使用i之后,使i的值加(减)1,2. 自

21、增、自减运算符:,算术表达式: 用算术运算符和括号将运算对象连接起来的、符合 语法规则的式子。 运算对象包括常量、变量、函数等。 语言规定了运算符的优先级和结合性,3. 算术表达式和运算符的优先级与结合性:,(1) +、-、*、/ 运算的两个数中有1个数为float或 double型,结果是double型。系统将float型数据都先 转换为double型,然后进行运算; (2) 如果int型与float或double型数据进行运算,先把 int型和float型数据转换为double型,然后进行运算, 结果是double型; (3)字符型数据与整型数据进行运算,就是把字符的 ASCII代码与整型

22、数据进行运算。,4.不同类型数据间的混合运算:,例3.3 给定一个大写字母,要求用小写字母输出。,解题思路: 关键是找到大、小写字母间的内在联系; 同一个字母,用小写表示的字符的ASCII代码比用大写表示的字符的ASCII代码大32。,#include int main ( ) char c1,c2; c1=A; c2=c1+32; printf(“%cn“,c2); printf(”%dn”,c2); return 0; ,将字符A的ASCII代码65放到c1中,将65+32的结果放到c2中,用字符形式输出,用十进制形式输出,强制类型转换运算符的一般形式为 (类型名)(表达式) (doubl

23、e)a (将转换成double类型) (int) (x+y) (将x+y的值转换成int型) (float)(5%3)(将5%3的值转换成float型) 有两种类型转换 系统自动进行的类型转换 强制类型转换,5. 强制类型转换运算符,(1) 算术运算符 (+ - * / % + -) (2) 关系运算符 ( !) (3) 逻辑运算符 (! |) (4) 位运算符 ( | ) (5) 赋值运算符 (及其扩展赋值运算符) (6) 条件运算符 (?:),6.运算符,(7) 逗号运算符 (,) (8) 指针运算符 (*和) (9) 求字节数运算符 (sizeof) (10) 强制类型转换运算符 ( (

24、类型) ) (11) 成员运算符 (.-) (12) 下标运算符 ( ) (13) 其他 (如函数调用运算符(),(一)变量的说明 变量是指在程序运行过程中其值可以改变的量。一个变量 有一个名字来标识,此名字称为该变量的标识符。C语言中规 定所有变量在使用前都必须加以说明。 一条变量说明语句由数据类型和其后的一个或多个变量名 组成。变量说明的形式如下: 类型说明符 ; 例如:int number; /*定义一个整型变量number*/ 这里的类型说明符是指C语言中的有效数据类型。变量名表 是一个或多个标识符名,每个标识符之间用,分隔。变量名的 命名规则符合标识符的命名规则即可。,2.3.3 变

25、量,变量是存储数据的值的空间。它在内存中占据一定的存 储单元,该存储单元用来存放变量的值。一旦变量被说明 后,系统会根据其类型,给变量分配该类型所占有的内存大 小空间。 这里一定要明白变量名和变量值是两个不同的概念,变 量名是指标识变量的标识符,它与内存中的某一存储单元相 联系,而变量值是指存放在该存储单元中的数据的值。如图 2_4所示:如果定义:int a; a是变量名,10是变量a在某个时 刻的值。,图2_4 变量名与变量值,变量名,变量值,存储单元,在定义变量时应注意以下几点: (1) 允许在一个类型说明符后,定义多个相同类型的变量,各变量之间用逗号分隔,类型说明符和变量名之间至少用一个

26、空格隔开; (2) 变量的说明语句后必须以英文状态下的“;”结尾; (3) 变量的定义必须放在变量的使用之前,一般情况下放在函数体的开始部分位置。,(二)变量初始化与变量的赋值 变量的初始化是指在定义变量时直接给变量赋值。例如:int number50; 变量的赋值就是把数据传送到变量所代表的存储空间的 操作。在C语言中,变量的赋值是用赋值运算符“=”来实现。 一般格式: 变量名=表达式; 例如:number5; /*把整数5赋给整型变量number*/ 在给变量赋值时应该注意: 变量应该先定义,再赋值。,2.4 运算符与表达式,运算是指对数据进行加工和处理,那么用来表示各种运算的符号称为运算

27、符。 C语言中的运算符包括:赋值运算符、算术运算符、逻辑运算符、位逻辑运算符、位移运算符、关系运算符、自增自减运算符等多种,下表2_4给出了常见的运算符。 大多数运算符都是双目运算符,即运算符位于两个表达式之间;也有单目运算符,该运算符作用于单个表达式;C中还有一个多目运算符(条件运算符)。用运算符把变量或者操作数连接起来的式子称为表达式。,C语言中的赋值运算符为“=”,它可以将赋值运算符右边的表达式的值赋给左边的变量。 由“=”连接的式子称为赋值表达式。一般格式为: 变量名表达式 赋值表达式的功能为:计算表达式的值,再把值送入左边的变量对应的存储空间,变量的值为赋值号右侧表达式的值,整个赋值

28、表达式的值取变量的值。赋值运算符具有右结合性。 如果一个表达式中有多个“=”运算符,其运算顺序是先右后左,例如赋值表达式ij5,等价于i(j5),既先把整数5的值赋给变量j,在把值赋给i。,2.4.1 赋值运算符与赋值表达式,使用赋值运算符“=”时,应该注意以下几点: (1)赋值运算符“=”的左侧必须是一个变量,不能是表达式或者常量; 例如:a=5+b=4,是错误的,但是写成a=5+(b=4)就对了。 (2)赋值运算符“=”不是等于运算符;等于运算符是“=”,用来判断两边的表达式是否相等的,最终的结果是真(非0),或者假(0)。,在C语言中有四个单目和五个双目算术运算符,由这些运算符把常量、变

29、量或者表达式连接起来的式子称为算术表达式。常见的算术运算符如下表2_5所示。 在使用算术运算符时,应该注意以下问题: (1)乘法运算符和除法运算符的表示形式与数学中不同; (2)对于除法运算符,如果除数和被除数均为整数,结果也为整数,舍弃小数部分;如果除数和被除数中有一个为浮点型数据,则结果为浮点型(double)。 (3)取余运算符要求两侧的数据均为整型; (4)+和-运算符只能用于变量,不能用于表达式或者常量。 (5)自增和自减运算符既可前置也可后置,目的都是参与运算的变量增1或者减1。当与赋值运算符一起用时,又有不同,前置时变量先增1或减1,后赋值,后置时先赋值,变量值再增1或减1。,2

30、.4.2 算数运算符与算数表达式,区别: +i 先使i加1,再使用i的值 i+ 先使用i的值,再使i加1,例1: 设 int i=3 , j;,例: (double) a 将变量a的值转换为double型 (float)(x+y) 将x+y的结果转换为float型,注1:只有当自动类型转换不能实现或格式需要时,才进行强制类型转换 如: int x=10; float y; y=(float)x/4; 目的:使 / 不成为整除 是将x的值转换成float型,而不是将x/4转换!,注2:强制类型转换相当于一个表达式,参与运算变量的类型没有发生变化!,注3:表达式为复杂式时必须用括号括起来!,在赋值

31、运算符当中,还有一类C/C+独有的复合赋值运算符。它们实际上是一种缩写形式,使得对变量的改变更为简洁。例如:Total=Total+3; 它的意思是Total的值加3,然后在赋值给Total。 为了简化,上面的代码也可以写成:Total+=3; 其中“+=”就是一个复合赋值运算符。复合赋值运算符有下列这些,见下表2_6示:,2.4.3 复合赋值运算符,上面的十个复合赋值运算符中,后面五个我们到以后位运算时再说明。 那么看了上面的复合赋值运算符,有人就会问,到底Total=Total+3;与Total+=3;有没有区别? 答案是有的,对于Total=Total+3,表达式Total被计算了两次,

32、对于复合运算符Total+=3,表达式Total仅计算了一次。 一般的来说,这种区别对于程序的运行没有太大影响,如果使用普通的赋值运算符,会加大程序的开销,使运行效率降低。,例如: 有:a=2;b=3;c=5;,1) a+=b;= a=a+b;=a=5,2) a*=b+c;= a=a*(b+c); =a=2*(3+5)=16,3) a%=c+2;= a=a%(c+2); =a=2%(5+2)=2,在C语言中有一个惟一的三目运算符,就是条件运算符? : ,由条件运算符把表达式连接起来的式子,称为条件表达式。其一般形式为: ? : 含义是:首先计算的值,如果为真(非0),则的值就为整个条件表达式的

33、值,否则,的值为整个条件表达式的值。,2.4.4 条件运算符与条件表达式,C语言中还提供了一种被称为逗号运算符的特殊运算符“,”,用它将两个或者两个以上的表达式连接起来的式子,称逗号表达式。 一般形式为: , , 其含义是先求 的值,再求 的值,最后整个逗号表达式的值取的值。 C语言有非常丰富的运算符,这是它的一大优点,但是缺点是这些运算符的优先级和结合性较为复杂(参看附录C)。,2.4.5 逗号运算符与条件表达式,又如: ( a = 5 * 4 , a * 2 ) , a + 9,a=20 该逗号表达式的值为29,注:逗号运算符的判断 printf(“%d,%d”,a,b); 逗号分隔符 p

34、rintf(“%d,%d”,(a,b),b); 逗号运算符,2.5 输入函数scanf( )和输出函数printf( ),2.1.1 格式化输入函数scanf( ),(1) scanf( )函数的一般形式 scanf( )是系统提供的用于输入的库函数,在头系统文件stdio.h中声明,该函数用于从键盘输入给定格式的数据,其一般形式:scanf(“格式控制符”, 当程序运行时就需要输入两个整型数据,如: 10 ,20 注意:两个数字间的”,”不能少。,(2) 格式控制符说明 scanf函数的格式控制符以%开始,以一个格式字符结束,中间可以插入附加字符。下表列出scanf函数用到的格式字符。,用户

35、输入时应注意: 1.格式控制字符串的普通字符应原样输入 2.%c中,空格与转义字符为有效字符 3.%s中, 以空格或回车结束字符的接收 4.数值型数据输入结束(回车) 5.数值型数据输入间隔: 需原样输入的字符 如没有其他字符,则用空格或TAB或回车,2.5.2 格式化输出函数printf( ),printf( )函数的一般形式: printf( )是系统提供的用于输出数据的库函数,在头系统文件stdio.h中声明,该函数用于在显示器上按给定格式输出数据,其一般形式: printf(“格式控制符”, 输出表列);,(1)与格式字符的个数相等 (2)用,隔开,(1)用双引号括起 (2)用“%+格

36、式字符”说明类型 (3)其他为原样输出的字符,格式控制包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式化控制字符, 以“%”开始, 后跟一个或几个规定字符,用来确定输出内容格式。 输出表列是需要输出的一系列参数, 其参数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用“,”分开, 且顺序一一对应, 否则将会出现错误。,例如: int x=10,y=20; printf(“x=%d, y=%d ”,x ,y); 程序的运行结果是: x=10, y=20,例:源文件 AL3_3.C,main( ) int a= -1; printf(“a=%on”,a );

37、 printf(“a=%xn”,a ); ,-1补 =(1111 1111 1111 1111)2 = (1 7 7 7 7)8 = (f f f f)16,输出:a=17777 a=ffff,例:源文件 AL3_4.C,main( ) char ch1=M , ch2=N; printf(“%c%c”,ch1,ch2 ); ,输出:MN,注:printf(“%c”,ch);与putchar(ch);的区别,例:源文件 AL3_5.C,main( ) char ch1=M , ch2=N; printf(“ %c , %c ”,ch1,ch2 ); ,例:源文件 AL3_6.C,main( ) float f1=3.14159 , f2=114.0005; printf(“%5.4f , %5.2f”,f1,f2 ); ,格式字符:%m.nf m数字总长 n小数点后位数,对于输入和输出函数要注意两句话: (1) 对于输入函数:输入时,“对于格式符,按照对应格式进行输入,非格式符,原样输入”。 (2) 对于输出函数:输出时,“对于格式符,按照对应的格式把相应变量的值,按给定格式输出,非格式符原样输出”。,

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1