第3章 最简单的C程序设计-顺序程序设计_第1页
第3章 最简单的C程序设计-顺序程序设计_第2页
第3章 最简单的C程序设计-顺序程序设计_第3页
第3章 最简单的C程序设计-顺序程序设计_第4页
第3章 最简单的C程序设计-顺序程序设计_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

1、第第3 3章章主讲:程永奇程永奇材料与能源学院材料与能源学院2022-5-3C C语言程序设计语言程序设计Page2第第3章章 最简单的最简单的C程序设计程序设计 顺序程序设计顺序程序设计v主要内容:主要内容: 3.1 顺序程序设计举例3.2 数据的表现形式及其运算3.3 C语句3.4 数据的数据的输入与输出输入与输出【重点】材料与能源学院2022-5-3C C语言程序设计语言程序设计v编写编写C C语言程序必须具备以下的知识和能力:语言程序必须具备以下的知识和能力:1)要有正确的解题思路,即学会设计算法学会设计算法,否则无从下手;2)掌握掌握C语言的语法语言的语法,知道怎样使用C语言所提供的

2、功能编写出一个完整的、正确的程序。3)在写算法和编写程序时,要采用结构化采用结构化程序设计方法程序设计方法,编写出结构化的程序。材料与能源学院2022-5-3C C语言程序设计语言程序设计例例3.13.1 有人用温度计测量出用华氏法表示的温度(如 F,今要求把它转换为以摄氏法表示的温度(如 C) 。解题思路:解题思路:找到二者间的转换公式找到二者间的转换公式)32(95fcf代表华氏温度代表华氏温度,c代表摄氏温度代表摄氏温度3.1 顺序程序设计举例顺序程序设计举例材料与能源学院2022-5-3C C语言程序设计语言程序设计算法:算法:输入f的值输出c的值)32(95fcN-S图图3.1 顺序

3、程序设计举例顺序程序设计举例材料与能源学院2022-5-3C C语言程序设计语言程序设计#include int main ( ) float f,c; f=64.0; c=(5.0/9)*(f-32); printf(f=%fnc=%fn,f,c); return 0; 定义定义f和和c为单精度浮点型变量为单精度浮点型变量指定指定f的值的值计算计算c的值的值输出输出f和和c的的值值3.1 顺序程序设计举例顺序程序设计举例材料与能源学院2022-5-3C C语言程序设计语言程序设计例例3.23.2 计算存款利息。有1000元,想存一年。有三种方法可选: (1)活期,年利率为r1 (2)一年期定

4、期,年利率为r2 (3)存两次半年定期,年利率为r3 请分别计算出一年后按三种方法所得到的本息和。3.1 顺序程序设计举例顺序程序设计举例材料与能源学院2022-5-3C C语言程序设计语言程序设计v解题思路:解题思路:确定计算本息和的公式。v从数学知识可知:若存款额为p0,则:活期存款一年后本息和为: p1=p0(1+r1)一年期定期存款,一年后本息和为: p2=p0(1+r2)两次半年定期存款,一年后本息和为: ) 23+)(123+p0(1=p3rr3.1 顺序程序设计举例顺序程序设计举例材料与能源学院2022-5-3C C语言程序设计语言程序设计v算法算法:输入p0,r1,r2,r3的

5、值计算p1=p0(1+r1)计算p2=p0(1+r2)计算p3=p0(1+ )(1+ )输出p1,p2,p323r23r3.1 顺序程序设计举例顺序程序设计举例材料与能源学院2022-5-3C C语言程序设计语言程序设计#include int main ( ) float p0=1000, 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

6、; 定义变量定义变量同时同时赋予初值赋予初值3.1 顺序程序设计举例顺序程序设计举例注意:不同注意:不同编译系统对编译系统对数据类型的数据类型的处理!处理!材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.1 常量和变量3.2.2 数据类型3.2.3 整型数据3.2.4 字符型数据3.2.5 浮点型数据3.2.6 怎样确定常量的类型3.2.7 运算符和表达式3.2 数据的表现形式及其运算数据的表现形式及其运算材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.1 常量和变量常量和变量 对于基本数据类型量,按其取值是否可改变又分为常量常量和变量变量两种。 在程序

7、执行过程中,其值不发生改变的量称为常量常量,其值可变的量称为变量变量。它们可与数据类型结合起来分类。例如,可分为整型常量、整型变量、浮点常量、浮点变量、字符常量、字符变量、枚举常量、枚举变量等。 在程序中,常量常量是可以是可以不经说明而直接引不经说明而直接引用用的的,而变量变量则必须则必须先定义后使用先定义后使用。材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.1 常量和变量常量和变量1.常量常量:在程序运行过程中,其值不能被改变的量v整型常量:如1000,12345,0,-345v实型常量十进制小数形式:如0.34 -56.79 0.0指数形式:如12.34e3 (代表1

8、2.34103)v字符常量:普通字符:如a , Z, 3, ?, #转义字符转义字符:如nv字符串常量:如”boy”v符号常量:#define PI 3.1416使用符号常量的好处: 含义清楚。如用PI代表3.141593。 能做到“一改全改”。材料与能源学院2022-5-3C C语言程序设计语言程序设计Page143.2.1 常量和变量常量和变量v有些以“ ”开头的特殊字符称为转义字符转义字符字符形式含义ASCII代码n换行换行,将当前位置移到下一行开头10t水平制表水平制表(跳到下一个Tab位置)9b退格,将当前位置移到前一列8r回车,将当前位置移到本行开头13f换页,将当前位置移到下页开

9、头12代表一个反斜杠字符“”92代表一个单引号单引号(撇号)字符39”代表一个双引号双引号字符34ddd1到3位八进制数所代表的字符xhh1到2位十六进制数所代表的字符材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.1 常量和变量常量和变量2. 变量变量:在程序运行期间,变量的值是可以改变的v变量必须先定义,后使用v定义变量时指定该变量的名字和类型v变量名和变量值是两个不同的概念v变量名实际上是以一个名字代表的一个存储地址v从变量中取值,实际上是通过变量名找到相应的内存地址,从该存储单元中读取数据材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.1 常量和

10、变量常量和变量3.常变量常变量:const int a=3;4.标识符标识符:一个对象的名字v语言规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线合法的标识符:如sum,average, _total, Class, day, BASIC, li_ling不合法的标识符:M.D.John,¥123,33,3D64,ab大小写字母是不同的字符大小写字母是不同的字符材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.2 数据类型数据类型v所谓类型,就是对数据分配存储单元的安排,包括存储单元的长度(占多少字节)以及数据的存储形式v不同的类型分配不同的长度

11、和存储形式材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.2 数据类型数据类型vC语言允许使用的数据类型如下:基本数据类型基本数据类型最主要的特点是其值不可以再分解为其它类型,也就是说基本数据类型是自我说明的。 指针类型指针类型是一种特殊的同时又具有重要作用的数据类型,其值用来表示某个变量在内存储器中的地址。 空类型空类型指在调用函数不需要返回值时,将该函数定义为void类型。 派生数据类型派生数据类型是根据已定义的一个或多个数据类型用构造的方法来定义的,也就是说一个构造类型的值可以分解成若干个“成员”或“元素”,每个“成员”都是一个基本数据类型或又是一个构造类型。 材料与

12、能源学院2022-5-3C C语言程序设计语言程序设计3.2.3 整型数据整型数据1. 整型数据的分类v最基本的整型类型基本整型(int型):占2个或4个字节短整型(short int):VC+6.0中占2个字节长整型(long int):VC+6.0中占4个字节双长整型(long long int):C99新增的材料与能源学院2022-5-3C C语言程序设计语言程序设计Page203.2.3 整型数据整型数据v整型数据在内存中的存放形式整型数据在内存中的存放形式如定义一个整型变量i: int i=10; /*定义为整型变量,并给i赋以整数10*/ 注注:数据在内存中是以二进制形式存放的。十

13、进制数10的二进制形式为1010。Turbo C+ 3.0为一个整型变量在内存中分配2个字节的存存储单元储单元(不同的编译系统为整型数据分配的字节数不同,VC+ 6.0分配4个字节)。计算机中,数值是以补码补码表示的。则则:整型数据10和-10的存放形式分别为:正整数正整数的补码补码和该数的原码(即该数的二进制形式)相同;负数负数的补码补码为将该数的绝对值的二进制形式按位取反再加1。10i0101000000000000-10i0110111111111111材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.3 整型数据整型数据1. 整型数据的分类2. 整型变量的符号属性整型

14、变量的值的范围包括负数到正数可以将变量定义为“无符号”类型扩充的整形类型:材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.3 整型数据整型数据扩充的整型类型扩充的整型类型:v有符号基本整型 signed int;v无符号基本整型 unsigned int;v有符号短整型 signed short int;v无符号短整型 unsigned short int;v有符号长整型 signed long int;v无符号长整型 unsigned long intv有符号双长整型 signed long long int; v无符号双长整型 unsigned long long in

15、t 材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.4 字符型数据字符型数据v字符是按其代码(整数)形式存储的vC99把字符型数据作为整数类型的一种v字符型数据在使用上有自己的特点材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.4 字符型数据字符型数据1.字符与字符代码大多数系统采用ASCII字符集字母:A Z,a z数字:09专门符号:29个:! ” # & ( ) *等空格符:空格、水平制表符、换行等不能显示的字符:空(null)字符(以0表示)、警告(以a表示)、退格(以b表示)、回车(以r表示)等材料与能源学院2022-5-3C C语言程

16、序设计语言程序设计3.2.4 字符型数据字符型数据v字符1和整数1是不同的概念:字符1只是代表一个形状为1的符号,在需要时按原样输出,在内存中以ASCII码形式存储,占1个字节整数1是以整数存储方式(二进制补码方式)存储的,占2个或4个字节0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.4 字符型数据字符型数据2.字符变量字符变量v用类型符char定义字符变量 char c = ?; 系统把“?”的ASCII代码63赋给变量cprintf(”%d %cn”,c,c);输出结果是:

17、63 ?材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.5 浮点型数据浮点型数据浮点型数据是用来表示具有小数点的实数vfloat型(单精度浮点型)编译系统为float型变量分配4个字节数值以规范化的二进制数指数形式存放 参见主教材图3.11材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.5 浮点型数据浮点型数据浮点型数据是用来表示具有小数点的实数vfloat型(单精度浮点型)vdouble型(双精度浮点型)u编译系统为double型变量分配8个字节u15位有效数字long double(长双精度)型材料与能源学院2022-5-3C C语言程序设计语言程序

18、设计3.2.6 怎样确定常量的类型怎样确定常量的类型v字符常量字符常量:由单撇号括起来的单个字符或转义字符v整型常量整型常量:不带小数点的数值系统根据数值的大小确定int型还是long型等v浮点型常量浮点型常量:凡以小数形式或指数形式出现的实数C编译系统把浮点型常量都按双精度处理分配8个字节材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.7 运算符和表达式运算符和表达式1.基本的算术运算符基本的算术运算符:+ :正号运算符(单目运算符) - :负号运算符(单目运算符)* :乘法运算符/ :除法运算符% :求余运算符+ :加法运算符 - :减法运算符材料与能源学院2022-5

19、-3C C语言程序设计语言程序设计3.2.7 运算符和表达式运算符和表达式说明v两个整数相除的结果为整数如5/3的结果值为,舍去小数部分如果除数或被除数中有一个为负值,舍入方向不固定。例如,-5/3,有的系统中得到的结果为-1,在有的系统中则得到结果为-2VC+采取“向零取整”的方法 如5/3=1,-5/3=-1,取整后向零靠拢v% 运算符要求参加运算的运算对象(即操作数)为整数,结果也是整数。如8%3,结果为2材料与能源学院2022-5-3C C语言程序设计语言程序设计Page323.2.7 运算符和表达式运算符和表达式v2. 自增、自减运算符自增、自减运算符 作用是使变量的值增或减,如:

20、+i, -i (在使用i之前,先使i的值加(减)1) i+, i- (在使用i之后,使i的值加(减)1)#include void main() int a, b, i=5; a=i+; b=+i; printf(“%d,%dn”, a, b);注注:(1)(1)自增运算符自增运算符(+)(+),自减运算符,自减运算符(-)(-),只能用于变量,而不能用于常量,只能用于变量,而不能用于常量或表达式;或表达式; (2)+(2)+和和-的结合方向是的结合方向是“自右至左自右至左”。自增。自增( (减减) )运算符常用于循环语句运算符常用于循环语句中使循环变量自动加中使循环变量自动加, ,也用于指针

21、变量,使指针指向下一个地址。也用于指针变量,使指针指向下一个地址。 +是先执行是先执行i=i+1后,再使用后,再使用i的值;的值; i+是先使用是先使用i的值后,再执行的值后,再执行i=i+1。材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.7 运算符和表达式运算符和表达式3. 算术表达式和运算符的优先级与结合性算术表达式和运算符的优先级与结合性:v用算术运算符和括号将运算对象(也称操作数)连接起来的、符合语法规则的式子,称为算术表达式v运算对象包括常量、变量、函数等v语言规定了运算符的优先级和结合性材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.7 运

22、算符和表达式运算符和表达式4.不同类型数据间的混合运算不同类型数据间的混合运算:+、-、*、/ 运算的两个数中有一个数为float或double型,结果是double型。系统将float型数据都先转换为double型,然后进行运算(2) 如果int型与float或double型数据进行运算,先把int型和float型数据转换为double型,然后进行运算,结果是double型(3)字符型数据与整型数据进行运算,就是把字符的ASCII代码与整型数据进行运算材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.7 运算符和表达式运算符和表达式 例例3.33.3 给定一个大写字母,要求

23、用小写字母输出。解题思路:解题思路:u关键是关键是找到大找到大、小写字母间小写字母间的的内在联系内在联系u同一个字母,用小写表示的字符的同一个字母,用小写表示的字符的ASCII代代码比用大写表示的字符的码比用大写表示的字符的ASCII代码大代码大32材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.7 运算符和表达式运算符和表达式#include int main ( ) char c1,c2; c1=A; c2=c1+32; printf(%cn,c2); printf(”%dn”,c2); return 0;将字符将字符A的的ASCII代码代码65放到放到c1中中将将65

24、+32的的结果结果放到放到c2中中用字符形式输出用字符形式输出用十进制形式输出用十进制形式输出材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.7 运算符和表达式运算符和表达式5. 强制类型转换运算符强制类型转换运算符v强制类型转换运算符的一般形式为 (类型名)(表达式)(double)a (将转换成double类型)(int) (x+y) (将x+y的值转换成int型) (float)(5%3)(将5%3的值转换成float型)v有两种类型转换系统自动进行的类型转换强制类型转换材料与能源学院2022-5-3C C语言程序设计语言程序设计3.2.7 运算符和表达式运算符和表达

25、式6.运算符运算符(1) 算术运算符 (+ - * / % + -)(2) 关系运算符 ( !)(3) 逻辑运算符 (! |)(4) 位运算符 ( | )(5) 赋值运算符 (及其扩展赋值运算符)(6) 条件运算符 (?:)(7) 逗号运算符 (,)(8) 指针运算符 (*和)(9) 求字节数运算符 (sizeof)(10) 强制类型转换运算符 ( (类型) )(11) 成员运算符 (.-)(12) 下标运算符 ( )(13) 其他 (如函数调用运算符()材料与能源学院2022-5-3C C语言程序设计语言程序设计3.3 C语句语句3.3.1 C语句的作用和分类3.3.2 最基本的语句-赋值语

26、句材料与能源学院2022-5-3C C语言程序设计语言程序设计Page403.3 C语句语句vC C程序结构程序结构:C程序源程序文件1源程序文件2源程序文件n预处理命令函数n函数1数据声明函数首部函数体执行语句数据声明一个一个C C程序可以有若干个源程序文件组成程序可以有若干个源程序文件组成一个源文件可以有若干个函数和预处理一个源文件可以有若干个函数和预处理命令以及全局变量声明部分组成命令以及全局变量声明部分组成函数体由数据声明函数体由数据声明和执行语句组成和执行语句组成控制语句控制语句函数调用语句函数调用语句表达式语句表达式语句空语句空语句复合语句复合语句一个函数有函数首部和函数体组成一个

27、函数有函数首部和函数体组成材料与能源学院2022-5-3C C语言程序设计语言程序设计Page413.3 C语句语句vC C语句类型:语句类型:C C语言数据语言数据操作语句操作语句简单语句简单语句表达式语句表达式语句( (表达式;表达式;) )函数调用语句函数调用语句( (函数名函数名( (参数表参数表)空语句空语句(:)(:)复合语句复合语句( (一条或多条语句一条或多条语句) )流程流程控制语句控制语句结构化语句结构化语句非结构化语句非结构化语句条件语句条件语句( (ifif语句语句, ,switchswitch语句语句) )循环语句循环语句whilewhile语句语句dodowhile

28、while语句语句forfor语句语句限定转向语句限定转向语句非限定转向语句非限定转向语句( (gotogoto语句语句) )breakbreak语句语句continuecontinue语句语句returnreturn语句语句printf(“This is a C statement.”);a=3; ; 注注:作流程的转向点;作流程的转向点; 作为循环语句中的循环体。作为循环语句中的循环体。材料与能源学院2022-5-3C C语言程序设计语言程序设计3.3.2 最基本的语句最基本的语句-赋值语句赋值语句v在C程序中,最常用的语句是:赋值语句输入输出语句v其中最基本的是赋值语句材料与能源学院20

29、22-5-3C C语言程序设计语言程序设计Page433.3.2 最基本的语句最基本的语句-赋值语句赋值语句例 输入三角形的三边长,求三角形面积。假设:三个边长a,b,c能构成三角形。已知面积公式:输入三边长计算s计算面积开始结束#include#includevoid main() float a,b,c,s,area; scanf(“%f,%f,%f,&a,&b,&c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c); printf(“a=%7.2f, b=%7.2f, c=%7.2f, s=%7.2fn”,a,b,c

30、,s); printf(“area=%7.2fn”,area);数学函数库,因为要用到其中的sqrt函数)()(csbsassarea)(21cbasv运行结果运行结果:输入三个边长,按Enter键格式化输出三个边长和三角形面积材料与能源学院2022-5-3C C语言程序设计语言程序设计Page443.3.2 最基本的语句最基本的语句-赋值语句赋值语句v归纳总结归纳总结:赋值运算符赋值运算符赋值符号“= =”就是赋值运算符,它的作用是将一个数据赋给一个变量。如“a=3”的作用是执行一次赋值操作(或称赋值运算),把常量3赋给变量a。也可以将一个表达式的值赋给一个变量。材料与能源学院2022-5-

31、3C C语言程序设计语言程序设计2.复合的赋值运算符复合的赋值运算符在赋值符“”之前加上其他运算符,可以构成复合的运算符 等价于 3.赋值表达式赋值表达式一般形式为: 变量 赋值运算符 表达式对赋值表达式求解的过程:求赋值运算符右侧的“表达式”的值赋给赋值运算符左侧的变量材料与能源学院2022-5-3C C语言程序设计语言程序设计4.赋值过程中的类型转换赋值过程中的类型转换两侧类型一致时,直接赋值两侧类型不一致,但都是算术类型时,自动将右侧的类型转换为左侧类型后赋值定义变量时要防止数据溢出5.赋值表达式和赋值语句赋值表达式和赋值语句赋值表达式的末尾没有分号,而赋值语句有分号一个表达式可以包含赋

32、值表达式,但决不能包含赋值语句6.变量赋初值变量赋初值int a=3,b=3,c;int a=3; 相当于 int a; a=3;材料与能源学院2022-5-3C C语言程序设计语言程序设计3.4 数据的输入输出数据的输入输出3.4.1 输入输出举例3.4.2 有关数据输入输出的概念3.4.3 用printf函数输出数据3.4.4 用scanf函数输入数据3.4.5 字符数据的输入输出材料与能源学院2022-5-3C C语言程序设计语言程序设计3.4.1 输入输出举例输入输出举例例3.5 求 方程的根。a、b、c由键盘输入, 设02cbxax042 acbv解题思路:首先要知道求方程式的根的方

33、法。v由数学知识已知:如果 0,则一元二次方程有两个实根:acb42aacbbx2421aacbbx2422abp2aacbq242若记若记qpx1qpx2材料与能源学院2022-5-3C C语言程序设计语言程序设计#include #include int main ( ) double a,b,c,disc,x1,x2,p,q; scanf(%lf%lf%lf,&a,&b,&c); disc=b*b-4*a*c; p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(x1=%7.2fnx2=%7.2fn

34、,x1,x2); return 0;程序中程序中调用数学函数调用数学函数sqrt输入输入a,b,c的值的值材料与能源学院2022-5-3C C语言程序设计语言程序设计Page503.4.2 有关数据输入输出的概念有关数据输入输出的概念v(一一)所谓输入输出是以计算机主机为主体而言的。所谓输入输出是以计算机主机为主体而言的。输出:从计算机向外部输出设备(显示器,打印机)输出数据;输入:从输入设备(键盘,鼠标,扫描仪)向计算机输入数据。v(二二)C语言本身不提供输入输出语句语言本身不提供输入输出语句,输入和输出操作输入和输出操作是由是由C函数库中的函数来实现的。函数库中的函数来实现的。例如: 字符

35、输入函数 getchar 字符输出函数 putchar 格式输入函数 scanf 格式输出函数 printf 字符串输入函数 gets 字数穿输出函数 putsv(三三)在使用系统库函数时在使用系统库函数时,要用预编译命令要用预编译命令“#include”将有关的将有关的“头文件头文件”包括到用户源文件中。包括到用户源文件中。例如: #include 或 #include “stdio.h”材料与能源学院2022-5-3C C语言程序设计语言程序设计3.4.3 用用printf函数输出数据函数输出数据v在C程序中用来实现输出和输入的,主要是printf函数和scanf函数这两个函数是格式输入输

36、出函数用这两个函数时,必须指定格式材料与能源学院2022-5-3C C语言程序设计语言程序设计Page523.4.3 用用printf函数输出数据函数输出数据vprintf函数函数一般格式一般格式:printf(格式控制格式控制,输出表列输出表列)函数作用函数作用:向终端(或系统隐含指定的输出设备)输出若干个任意类型的数据。格式说明格式说明和普通字符普通字符例例:printf(“The results were %d, %dn”,max,min);附加格式说明字符:附加格式说明字符:l: 用于长整型整数,可加在格式符d,o,x,u前面。m(代表一正整数): 数据最小宽度n(代表一正整数): 对

37、实数,表示输出n位小数; 对字符串,表示截取的字符个数。-: 输出的数字或字符在域内向左靠。%d%d( (带符号十进制整数带符号十进制整数) )、%o%o( (无符号八进制整数无符号八进制整数) )、%x%x( (无符号十六进制整数无符号十六进制整数) )、%u%u( (无符号十进制整数无符号十进制整数) )、%c%c( (字符字符) )、%s%s( (字符串字符串) )、%f%f( (单,双精度数单,双精度数) )、%e%e( (指数形式实数指数形式实数) )、%g%g( (用用%f%f或或%e%e宽度较短的宽度较短的) )。材料与能源学院2022-5-3C C语言程序设计语言程序设计Pag

38、e533.4.3 用用printf函数输出数据函数输出数据v d格式符格式符。用来输出十进制整数 几种用法:几种用法:%d:按十进制整型数据的实际长度输出。%md:m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。 %ld:输出长整型数据。#include void main() int a=123,b=12345; printf(%4d,%4dn,a,b); long c=123456; printf(%ldn,c);/* 定义c为长整型变量*/* 定义a、b为整型变量*/输出a、b,限定字段宽度为4输出c,指定格式为长整型材料与能源学院2022-5

39、-3C C语言程序设计语言程序设计Page543.4.3 用用printf函数输出数据函数输出数据v格式符格式符。用来以小数形式输出实数(包括单双精度)几种用法:几种用法:%f。不指定字段宽度,由系统自动指定字段宽度,使整数部分全部输出,并输出位小数。注意注意:在输出的数字中并非全部数字都是有效数字。单精度实数的有效位数单精度实数的有效位数一般为位。一般为位。#include void main()float a,b; a=111111.111; b=222222.222; printf(%f,a+b); double x,y; x=1111111111111.111111111; y=222

40、2222222222.222222222; printf(%f,x+y);输出单精度(a+b),7位有效数字输出双精度(x+y),16位有效位数,6位小数材料与能源学院2022-5-3C C语言程序设计语言程序设计Page553.4.3 用用printf函数输出数据函数输出数据%m.nf。指定输出的数据共占列,其中有位小数。如果数值长度小于,则左端补空格。%-m.nf与%m.nf基本相同,只是使输出的数值向左端靠,右端补空格。#include void main() float f=123.456; printf(%f %10f %10.2f %-10.2f %.2fn,f,f,f,f,f);

41、注意注意:浮点型数据的存储误差材料与能源学院2022-5-3C C语言程序设计语言程序设计Page56字符说明d(或i)以带符号的十进制形式输出整数,不输出(+)号o以八进制无符号形式输出整数(不输出前导符数字0)x(或X)以十六进制无符号形式输出整数(不输出前导符0 x)u以无符号十进制形式输出整数c输出一个字符s输出字符串f以小数形式输出单、双精度数,隐含输出6位小数e(或E)以指数形式输出单、双精度数,小数位数为6位g(或G)由给定的值和精度自动选用%f或%e或%E格式3.4.3 用用printf函数输出数据函数输出数据vprintf格式字符格式字符!字母o材料与能源学院2022-5-3

42、C C语言程序设计语言程序设计Page573.4.3 用用printf函数输出数据函数输出数据v格式说明的形式:格式说明的形式:%flagswidth.precltype方括号表示该方括号表示该项可有可无。项可有可无。“-” 输出的数字或字输出的数字或字符在域内向左靠。符在域内向左靠。“n”输出精度指示符(十进制整数):输出精度指示符(十进制整数):对实数,表示输出小数位数;对实数,表示输出小数位数;对字符串,表示截取的字符个数。对字符串,表示截取的字符个数。“l”用于长整型整数,可加在用于长整型整数,可加在格式符格式符d,o,x,u前面。前面。格式字符,用来格式字符,用来进行格式转换。进行格

43、式转换。“m”十进制整数,指定输出宽度。十进制整数,指定输出宽度。指定宽度指定宽度实际宽度,补空格。实际宽度,补空格。指定宽度指定宽度实际宽度,按实际输出。实际宽度,按实际输出。不指定宽度,按实际输出。不指定宽度,按实际输出。材料与能源学院2022-5-3C C语言程序设计语言程序设计Page583.4.3 用用printf函数输出数据函数输出数据例 无符号数据的输出。运行结果运行结果:#includevoid main() unsigned int a=65535;int b=-2; printf(“a=%d,%o,%x,%un”,a,a,a,a); printf(“b=%d,%o,%x,%

44、un”,b,b,b,b);依次输出:依次输出:带符号十进制整数,带符号十进制整数,无符号八进制整数,无符号八进制整数,无符号十六进制整数,无符号十六进制整数,无符号十进制整数无符号十进制整数负数的存储与表示形式材料与能源学院2022-5-3C C语言程序设计语言程序设计Page593.4.3 用用printf函数输出数据函数输出数据例 字符和字符串的输出。运行结果运行结果:#includevoid main() char c=a; int i=97; printf(“%c,%dn”,c,c); printf(“%c,%dn”,i,i); printf(“%3s,%7.2s,%-5.3s,%.4sn”, “CHINA”, “CHINA”, “CHINA”, “CHINA”);字符数据的输出字符串的输出输出一个字符和一个整数输出一个字符和一个整数输出格式化字符串输出格式化字符串材料与能源学院2022-5-3C C语言程序设计语言程序设计Page603.4.3 用用printf函数输出数据函数输出数据v使用printf函数说明:除了X,E,G外,其他格式字符必须用小写。可以在printf函数中的“格式控制”字符串中包含转义字符。一个格式说明必须以“%”开

温馨提示

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

最新文档

评论

0/150

提交评论