第3章-顺序结构程序设计...ppt

上传人:得****1 文档编号:79212565 上传时间:2023-03-20 格式:PPT 页数:40 大小:1.41MB
返回 下载 相关 举报
第3章-顺序结构程序设计...ppt_第1页
第1页 / 共40页
第3章-顺序结构程序设计...ppt_第2页
第2页 / 共40页
点击查看更多>>
资源描述

《第3章-顺序结构程序设计...ppt》由会员分享,可在线阅读,更多相关《第3章-顺序结构程序设计...ppt(40页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、2023/3/101回顾复习回顾复习(运算符和表达式运算符和表达式)算术运算符:算术运算符:算术运算符:算术运算符:+-*/%(+-)*/%(+-)赋值运算符:赋值运算符:赋值运算符:赋值运算符:=+=-=/=+=-=/=条件运算符:条件运算符:条件运算符:条件运算符:?:?:?:逗号运算符逗号运算符逗号运算符逗号运算符 :,(,(,(,(表达式表达式1 1,表达式,表达式2 2,表达式,表达式n n)2023/3/102本次课内容本次课内容 2.4 数据数据类型型转换 第第3章章 顺序序结构程序构程序设计l3.1 C语言的基本言的基本语句句l3.2 数据数据输入与入与输出出(重点)(重点)2

2、023/3/103 形式有两种:形式有两种:sizeof(sizeof(变变量名量名)返回返回变变量的字量的字节长节长度度sizeof(sizeof(类类型名型名)返回返回类类型的字型的字节长节长度度 结结果果为为整型数。整型数。int a int a;float xfloat x;printf(printf(“%d,%d%d,%d”,sizeof(a),sizeof(x);,sizeof(a),sizeof(x);printf(printf(“%d,%d%d,%d”,sizeof(int),sizeof(float);,sizeof(int),sizeof(float);以上两个以上两个pr

3、intfprintf语句结果均为语句结果均为 。例如例如3 3、求求字节运算符:字节运算符:sizeof 作用:求得变量或某种数据类型所需的字节数。作用:求得变量或某种数据类型所需的字节数。2 2,4 42.3 2.3 运算符与表达式运算符与表达式2023/3/104思考思考已知:已知:float a=2.0;int b=6,c=3;求解表达式:求解表达式:a*b/c-1.5+a+fabs(-5)结果果的数据的数据类型?型?2023/3/105 C C语语言允言允许许整型、整型、实实型、字符型数据型、字符型数据进进行混合运算。行混合运算。有有3 3种种转换转换方式:自方式:自动转换动转换、赋值

4、转换赋值转换和和强强制制转换转换。一、类型自动转换一、类型自动转换 2.4 2.4 数据类型转换数据类型转换 double floatunsigned long long unsigned int int char,short特点:由数值存储位数少特点:由数值存储位数少的向多的转换;整型向实的向多的转换;整型向实型转换!型转换!操作数为相同类型的不转操作数为相同类型的不转换,仍取原类型!换,仍取原类型!2.4 2.4 数据类型转换数据类型转换2023/3/106 int x=2;float y=1.6;char c=int x=2;float y=1.6;char c=A A;则则:c +1/

5、x *yc +1/x *y =例如例如char c=68.5;printf(“%c”,c);65(int)+0(int)*1.6(float65(int)+0(int)*1.6(float)65.0(double)65.0(double)二、赋值转换二、赋值转换 在赋值时将赋值符右边值的类型转换成与其左边变量类型在赋值时将赋值符右边值的类型转换成与其左边变量类型 一致的类型。一致的类型。有下列几种情况:有下列几种情况:(1)(1)实型实型 整型(字符型):去掉小数部分;整型(字符型):去掉小数部分;2.4 2.4 数据类型转换数据类型转换2023/3/107(2)(2)整型(字符型)整型(字符

6、型)实实型:型:补补足有效位;足有效位;float f=23;23.00000 f(7位)位)double f=A;65.0000000000000 f(15位)位)(3)(3)对对charchar、intint、shortshort、longlong、unsignedunsigned型数据:型数据:赋值符右边数据(赋值符右边数据(a a位)位)赋值符左边的变量(赋值符左边的变量(b b位)位)若若 a=ba=b abab abab原样照赋;原样照赋;截断高截断高a-ba-b位,送低位,送低b b 位;位;有符号数据有符号数据 有符号变量:符号扩展;有符号变量:符号扩展;其他情况:高其他情况:

7、高b-ab-a位全补位全补0 0。符号扩展:符号扩展:符号位为符号位为0 0,剩余的高位补,剩余的高位补0 0;符号位为符号位为1 1,剩余的高位补,剩余的高位补1 1。2.4 2.4 数据类型转换数据类型转换2023/3/108数据类型转换数据类型转换赋值转换赋值转换整型数据赋值给单、双精度变量,数值不变,整型数据赋值给单、双精度变量,数值不变,但以浮点数形式存储。但以浮点数形式存储。实型数据赋值给整型变量,舍弃实数小数部分。实型数据赋值给整型变量,舍弃实数小数部分。字符型数据赋值给整型变量,字符数据放入到字符型数据赋值给整型变量,字符数据放入到整型变量低整型变量低8 8位中,整型变量高位中

8、,整型变量高8 8位补位补0 0或补或补1 1。整型数据整型数据(int)(int)赋值给赋值给longintlongint型变量,进行符号型变量,进行符号扩展,扩展,longintlongint型变量高型变量高1616位补位补0 0或补或补1 1。无符号整型数据无符号整型数据(unsignedint)(unsignedint)赋值给赋值给longintlongint型变量,型变量,longintlongint型变量高型变量高1616位补位补0 0。2023/3/109数据类型转换数据类型转换三、强制类型转换:将一个表达式转换为指定类型三、强制类型转换:将一个表达式转换为指定类型(类型名类型名

9、)()(表达式表达式)intintx=6,y=4;x=6,y=4;则则x/y=_x/y=_intx=6,y=4;intx=6,y=4;则则(floatfloat)(x/y)=_)(x/y)=_intx=6,y=4;intx=6,y=4;则则(floatfloat)x/y=_)x/y=_注意:注意:注意:注意:强制转换得到所需类型的中间变量,原变强制转换得到所需类型的中间变量,原变强制转换得到所需类型的中间变量,原变强制转换得到所需类型的中间变量,原变 量类型不变量类型不变量类型不变量类型不变11.0000001.500000例 main()float x;int i;x=3.6;i=(int)

10、x;printf(“x=%f,i=%d”,x,i);结果:x=3.600000,i=3较高类型向较低类型转换时可能发生精度损失问题2023/3/10103.1 C语言的基本语句语言的基本语句3.2 数据输入与输出数据输入与输出3.3 程序举例程序举例第第3章章 顺序结构程序设计顺序结构程序设计2023/3/1011顺序结构执行流程顺序结构执行流程l l流程图开始开始AB结束结束l lN-S图开始开始AB结束结束l l执行流程1.先执行A语句2.再执行B语句圆角矩形表示圆角矩形表示“开始开始”或或“结束结束”方角矩形表示方角矩形表示“操作语句操作语句”2023/3/1012 程序设计语言有顺序、

11、选择、循环三种基本的控制结构。程序设计语言有顺序、选择、循环三种基本的控制结构。BA图图3.1 顺序结构执行流程顺序结构执行流程 顺序结构是最基本的控制结构,其包含的语句是按照顺序结构是最基本的控制结构,其包含的语句是按照书写的顺序执行的,且每条语句都将被执行。程序流程如书写的顺序执行的,且每条语句都将被执行。程序流程如图图3.1 所示,语句按书写顺序执行。先执行所示,语句按书写顺序执行。先执行A,再执行,再执行B。例:例:#include main()int a=10,x=5,y=6;a+=a*=6;x=y+;y=+x;a=x+y;printf(“%d,%d,%d”,a,x,y);输出:输出

12、:14,8,72023/3/1013基本语句基本语句简单语句简单语句表达式语句表达式语句表达式表达式;函数调用语句函数调用语句函数名函数名(参数名参数名););空语句空语句;数据数据复合语句复合语句 多条语句多条语句 操作操作条件语句条件语句if if,switchswitch语句语句结构化语句结构化语句whilewhile流程流程循环语句循环语句do-whiledo-while控制控制forfor语句语句非结构化语句非结构化语句breakbreak,continuecontinue,returnreturn非限定转向语句非限定转向语句2023/3/1014简单语句简单语句1.1.表达式表达式

13、语语句句一般形式:一般形式:表达式表达式;y+;y+;x=3;x=3;2.2.函数函数调调用用语语句(句(由函数由函数调用表达式加分号构成)用表达式加分号构成)一般形式:一般形式:函数名函数名(参数列表参数列表););如:如:printf(“%d”,a);scanf(“%f”,&b);abs(x);abs(x);C C 语语言言有有丰丰富富的的标标准准函函数数库库,可可提提供供各各类类函函数数供供用用户户调调用用,完完成成预预先先设设定定好好的的操操作作.例例如如调调用用标标准准库库函函数数求求数数学学函函数数值值:sin(x)sin(x)、cos(x)cos(x)、exp(x)exp(x)(

14、求求e ex x )、fabs(x)fabs(x)(求求x x的绝对值的绝对值)、log(x)log(x)等。等。3 3 3 3.空语句空语句空语句空语句 一般形式:一般形式:;数学表达式数学表达式 y=|3sinx+4cosx|+ey=|3sinx+4cosx|+ex x,用用C C语言表示为:语言表示为:y=fabs(3*sin(x)+4*cos(x)+exp(x);2023/3/1015 复合语句复合语句 语句1;语句n;用一对花括号,把若干条语句括起来,用一对花括号,把若干条语句括起来,就形成了一条复合语句。形式如下:就形成了一条复合语句。形式如下:花括号中的语句,可以是简单语句、空语

15、句、复合花括号中的语句,可以是简单语句、空语句、复合语句、流程控制语句,所有这些语句括在一起,在语法语句、流程控制语句,所有这些语句括在一起,在语法上看成是一条语句,执行时顺序执行花括号中的每条语上看成是一条语句,执行时顺序执行花括号中的每条语句。复合语句多用于流程控制语句中。句。复合语句多用于流程控制语句中。2023/3/10163.2 3.2 数据输入与输出(重点)数据输入与输出(重点)C语言本身不提供输入输出语句,得由标准I/O库函数提供。输入输出库函数很丰富,可以从键盘、显示器、磁盘文件和硬件端口进行输入或输出操作。本节主要介绍用于键盘输入和显示器输出的函数。2023/3/1017字符

16、输出函数字符输出函数1.1.一般形式:putchar(函数参数);2.2.函数功能:向标准输出设备(显示器)输出一个字符。3.3.函数的参数可以是字符常量、字符变量或者整型变量。#include main()int i=97;char ch=a;putchar(a);putchar(i);putchar(ch);程序输出结果是:程序输出结果是:_aaa2023/3/1018字符输入函数字符输入函数1.1.一般形式:一般形式:字符型字符型变变量量=getchar();=getchar();2.2.函数功能:从函数功能:从输输入入设备设备(键盘键盘)上)上输输入入一个一个一个一个字符。字符。3.3

17、.字符字符输输入函数每入函数每调调用一次,就从用一次,就从标标准准输输入入设备设备上上取一个字符。取一个字符。4.4.函数函数值值可以可以赋给赋给一个字符一个字符变变量,也可以量,也可以赋给赋给一个一个整型整型变变量。量。#include main()char ch;int i;ch=getchar();i=getchar();putchar(ch);putchar(i);已知从键盘上分别输入已知从键盘上分别输入a和和65,则程序输出结果:则程序输出结果:_a62023/3/1019字符输入函数字符输入函数int getchar(void)从输入设备从输入设备(一般为键盘一般为键盘)上输入一个

18、字符。它每被调上输入一个字符。它每被调用一次,就从标准输入设备上取一个字符,返回值是该字用一次,就从标准输入设备上取一个字符,返回值是该字符的符的ASCIIASCII编码值,可以赋给字符变量或整型变量。编码值,可以赋给字符变量或整型变量。例:例:#include main()int i,j;char c;i=getchar();putchar(i);j=getchar();putchar(j);c=getchar();putchar(c);思考思考:以下三种不同的输入,以下三种不同的输入,输出情况如何?输出情况如何?1.abcdefg 2.ab 3.a bcdefg 执行执行getchar()

19、getchar()时输入字符以回车结束,回车后,时输入字符以回车结束,回车后,程序才会响应输入,继续执行后续语句;同时回车字程序才会响应输入,继续执行后续语句;同时回车字符也可以做为输入的字符。符也可以做为输入的字符。注意注意2023/3/1020格式输出函数格式输出函数l l一般形式:一般形式:printf(printf(“格式控制字符串格式控制字符串”,输输出出项项列表列表););函数功能:按规定格式向输出设备(显示器)输函数功能:按规定格式向输出设备(显示器)输出数据。出数据。1.1.“格式控制字符串格式控制字符串”必须用英文的双引号括起来,必须用英文的双引号括起来,它的作用是控制输出项

20、的格式和输出一些提示信息。它的作用是控制输出项的格式和输出一些提示信息。2.2.“输出项列表输出项列表”列出要输出的表达式,它可以是列出要输出的表达式,它可以是0 0个、个、1 1个或者多个,多个输出项之间用个或者多个,多个输出项之间用,作为分隔符。作为分隔符。3.3.输出的数据可以是整数、实数、字符和字符串。输出的数据可以是整数、实数、字符和字符串。2023/3/1021格式输出函数的一般形式格式输出函数的一般形式printf(“格式控制字符串格式控制字符串”,输出参数表输出参数表);用双引号括起来,控制输出项的格式和输出一些提示信息 可以是一个或多个输出项.可以是常量或变量表达式,用逗号分

21、隔。类型可以是整型实型字符型和字符串.具体的讲,具体的讲,printf语句,就是把输出参数表中的表达式的值,语句,就是把输出参数表中的表达式的值,按照格式控制字符串的格式,依次在指定的位置输出,如按照格式控制字符串的格式,依次在指定的位置输出,如果输出位置不够,从左到右依次输出前几个的值。果输出位置不够,从左到右依次输出前几个的值。2023/3/1022printf(“格式控制字符串格式控制字符串”,输出项列表输出项列表);l l格式控制字符串的格式控制字符串的组组成成1.1.普通字符:按原样输出,主要用于输出提示信息。普通字符:按原样输出,主要用于输出提示信息。#include#includ

22、emain()main()inta=3;inta=3;printf(printf(“%dn%dn”,a);,a);printf(printf(“a=%dna=%dn”,a);,a);2.2.转义字符:指明特定的操作转义字符:指明特定的操作,如如”nn”表示换行。表示换行。3.3.输出项格式说明:由输出项格式说明:由“%”和和“格式字符串格式字符串”组成,它组成,它表示按规定的格式输出数据。表示按规定的格式输出数据。pp格式说明形式:格式说明形式:%flagswidth.precF|N|h|ltypeflagswidth.precF|N|h|ltype3a=32023/3/1023%flagsw

23、idth.precF|N|h|ltypel ltypetype:为可选的格式字符,用来进行格式转换。:为可选的格式字符,用来进行格式转换。字符字符说明说明d d(或(或i i)以带符号的十进制数形式输出整数,正数不输出正号(以带符号的十进制数形式输出整数,正数不输出正号(+)o o以八进制无符号形式输出整数,不输出前导符数字以八进制无符号形式输出整数,不输出前导符数字0 0 x x(或(或X X)以十六进制无符号形式输出整数,不输出前导符数字以十六进制无符号形式输出整数,不输出前导符数字0 x0 xu u以无符号十进制形式输出整数以无符号十进制形式输出整数c c输出一个字符输出一个字符s s输

24、出一个字符串输出一个字符串f f以小数形式输出实数,默认输出以小数形式输出实数,默认输出6 6位小数位小数e e(或(或E E)以指数形式输出实数,尾数部分小数数位为以指数形式输出实数,尾数部分小数数位为6 6位位g g(或(或GG)由给定的值和精度自动选用由给定的值和精度自动选用%f%f或或%e%e或或E E格式格式%输出百分号输出百分号l标准输出宽度共占标准输出宽度共占13位位1.尾数尾数整数部分为非零数字占整数部分为非零数字占1位位小数点小数点1位,小数占位,小数占6位位2.指数指数正(负)号占正(负)号占1位位指数占指数占3位位2023/3/1024%flagswidth.precF|

25、N|h|ltype1.1.:表示:表示该项为该项为可可选项选项。2.2.widthswidths:可:可选择选择的的宽宽度指示符,用十度指示符,用十进进制正整数制正整数指定数据指定数据输输出出时时的位数。的位数。指定位数指定位数 实际位数,补空格。实际位数,补空格。指定位数指定位数 实际位数,按照实际个数原样输出。实际位数,按照实际个数原样输出。inta=3456;inta=3456;printf(printf(“%d dnn”,a);,a);printf(printf(“%8d8dnn”,a);,a);printf(printf(“%3d3dnn”,a);,a);34563456345620

26、23/3/1025%flagswidth.precF|N|h|ltype3.3.flagsflags:可:可选选的的标标志字符,常用志字符,常用标标志字符如下。志字符如下。-:左对齐输出,默认为右对齐输出。:左对齐输出,默认为右对齐输出。inta=3456;inta=3456;printf(printf(“%8d8d”,a);,a);printf(printf(“endnendn”););printf(printf(“%-8d-8d”,a);,a);printf(printf(“endnendn”););+:正数输出加号(:正数输出加号(+),负数输出减号(),负数输出减号(-)。)。inta

27、=12,b=-15;inta=12,b=-15;printf(printf(“%d d,%,%+d+dnn”,a,a);,a,a);printf(printf(“%d d,%,%+d+dnn”,b,b);,b,b);345612,+12-15,-153456endend2023/3/1026%flagswidth.precF|N|h|ltype3.3.flagsflags:可:可选选的的标标志字符,常用志字符,常用标标志字符如下。志字符如下。空格:正数输出空格代替加号(空格:正数输出空格代替加号(+),负数),负数输出减号(输出减号(-)。)。inta=12,b=-15;inta=12,b=-

28、15;printf(printf(“%d d,%,%d dnn”,a,a);,a,a);printf(printf(“%d d,%,%ddnn”,b,b);,b,b);12,-15,-15121 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17777ffff7main()int a=1;printf(“a=%d,%o,%x,%un”,a,a,a,a);%o%o按整型数据的实际长度,以八进制按整型数据的实际长度,以八进制形式输出整数。即将内存单元中的各形式输出整数。即将内存单元中的各二进制的值按八进制形式输出二进制的值按八进制形式输出2023/3/1027%flagswidth.pr

29、ecF|N|h|ltype4.4.prec.prec:为为可可选选的精度指示符,用的精度指示符,用“小数点小数点”加加“十十进进制正整数制正整数”表示。表示。对于对于“整数整数”,表示至少要输出的数字个数,表示至少要输出的数字个数,不足补不足补0 0;超过则原样输出;超过则原样输出;对于对于“实数实数”,表示小数点后至多输出的数字,表示小数点后至多输出的数字个数,不足补个数,不足补0 0,超过则舍入处理。,超过则舍入处理。对于对于“字符串字符串”,表示最多输出的字符个数,表示最多输出的字符个数,不足补空格,多则丢弃。不足补空格,多则丢弃。floatb=3.1415926;floatb=3.14

30、15926;printf(printf(“%f fnn”,b);,b);printf(printf(“%.2f.2fnn”,b);,b);printf(printf(“%.11f.11fnn”,b);,b);printf(printf(“%8.2f8.2fnn”,b);,b);3.1415933.143.14 3.14159260000 2023/3/1028%flagswidth.precF|N|h|ltype5.5.F|N|h|l:为可选的输出长度修饰符。F:输出远指针存放的地址;N:输出近指针存放的地址;h:输出短整型数据的值;l:输出长整型或双精度型数据的值。inta=5;shortb

31、=7;longc=40000;inta=5;shortb=7;longc=40000;printf(printf(“%dn%dn”,a);,a);printf(printf(“%_n%_n”,b);,b);printf(printf(“%_n%_n”,c);,c);hdld2023/3/1029综合综合#include#includemain()main()intn=-1;intn=-1;charch=a;charch=a;floatf=-123.456;floatf=-123.456;clrscr();clrscr();printf(%printf(%d d,%,%u un,n,n);n,n

32、,n);printf(%printf(%-5d-5d,%,%5d5dn,n,n);n,n,n);printf(%printf(%o o,%,%x xn,n,n,n,n);n,n,n,n,n);printf(%printf(%5c5c,%,%c c,%,%d dn,ch,ch,ch);n,ch,ch,ch);printf(%printf(%s s,%,%5s5s,%,%10s10sn,n,program,program,programprogram,program,program););printf(%printf(%f f,%,%.2f.2f,%,%8.2f8.2fn,f,f,f);n,f,f

33、,f);printf(%printf(%f f,%,%e e,%,%g gn,f,f,f);n,f,f,f);-1,65535-1 ,-1 17777,ffff a,a,97program,program,programprogram,program,program-123.456001,-123.46,-123.46-123.456001,-123.46,-123.46123.456001,-1.23456e+02,-123.456123.456001,-1.23456e+02,-123.456 2023/3/1030输输 出出 表表 列列main()int i=8,j=10,m,n;m=+

34、i;n=j+;printf(“n%d,%d,%d,%d”,i,j,m,n);9,11,9,10main()int i=8,j=10;printf(“n%d,%d,%d,%d”,i,j,+i,j+);9,11,9,10printf()printf()printf()printf()在处理输出列表时,是在处理输出列表时,是在处理输出列表时,是在处理输出列表时,是从右到左进行运算从右到左进行运算从右到左进行运算从右到左进行运算的,的,的,的,但但但但输出时输出时输出时输出时,是按,是按,是按,是按从左到右从左到右从左到右从左到右的顺序排列的。的顺序排列的。的顺序排列的。的顺序排列的。2023/3/1

35、031格式输入函数格式输入函数l l一般形式:一般形式:scanf(scanf(“格式控制字符串格式控制字符串”,地址列表地址列表););pp函数功能:按规定格式从键盘输入若干任何类型的数据函数功能:按规定格式从键盘输入若干任何类型的数据给指定的变量。给指定的变量。1.1.格式控制字符串的组成:实现格式控制格式控制字符串的组成:实现格式控制格式字符格式字符普通字符普通字符形式:形式:%*widthF|Nh|ltype*widthF|Nh|ltype2.2.地址列表地址列表由若干个地址组成的列表,各地址之间以逗号由若干个地址组成的列表,各地址之间以逗号,间隔。间隔。形式:形式:&变量名变量名sc

36、anf(scanf(“%d,%f%d,%f”,&a,&b);,&a,&b);scanfscanf语句在运行时,会停下来,等待从键盘输入值依次语句在运行时,会停下来,等待从键盘输入值依次存入地址列表中的地址空间,即相当于从键盘给变量赋值。存入地址列表中的地址空间,即相当于从键盘给变量赋值。2023/3/1032格式字符串:格式字符串:格式字符串:格式字符串:%*widthwidthF|Nh|ltypeF|Nh|ltypewidthwidth:宽宽度指示符,表示度指示符,表示该输该输入入项项最多可最多可输输入的入的字符个数。字符个数。scanf(scanf(“%3d%5d%3d%5d”,&a,&b

37、);,&a,&b);printf(printf(“a=%dnb=%dna=%dnb=%dn”,a,b);,a,b);1.1.如果执行时从键盘输入:如果执行时从键盘输入:20012000002001200000,则输出结果,则输出结果a=a=b=b=2.2.如果执行时从键盘输入:如果执行时从键盘输入:2001200=0002001200=000,则输出结果,则输出结果a=a=b=b=输入过程中遇到空格或不可转换字符,读入将减少。输入过程中遇到空格或不可转换字符,读入将减少。2001200020012002023/3/1033格式字符串:格式字符串:格式字符串:格式字符串:%*widthF|Nh|

38、ltypewidthF|Nh|ltypel l*:输入赋值抑制字符,表示该格式说明要求输入数据,但不赋值,也即在地址列表中没有对应的地址项。scanf(“%3d%*5d%f”,&a,&b);如果执行时从键盘输入:200120004.1则a赋值为_,b赋值为_。2004.12023/3/1034scanf函数注意事项函数注意事项1.1.输入数据分隔处理当需要输入多个数据时,分隔符必须和格式字符串中的分隔符一致。scanf(scanf(“%d%d,%d%d,%d%d”,&a,&b,&c);,&a,&b,&c);正确输入格式:正确输入格式:3 3,5 5,8 8如果格式字符串中没有指明分隔符,输入时

39、使用默认的分隔符空格或者回车或者tab键。scanf(scanf(“%d%d%d%d%d%d”,&a,&b,&c);,&a,&b,&c);正确输入格式:正确输入格式:33=55=88或或358scanf(“a=%d,b=%d”,&a,&b);输入:输入:a=1,b=2回车回车2023/3/1035scanf运行时注意事项运行时注意事项2.2.用用scanfscanf函数函数输输入入实实数,格式数,格式说说明符明符为为%f%f,但不,但不允允许规许规定精度。定精度。floatm;floatm;scanf(scanf(“%f f”,&m);,&m);scanf(scanf(“%10f10f”,&m

40、);,&m);scanf(scanf(“%10.2f10.2f”,&m);,&m);3.3.如果如果输输入入时类时类型不匹配,型不匹配,scanfscanf函数将停止函数将停止处处理,理,其返回其返回值为值为零。零。inta;floatm;charch;inta;floatm;charch;scanf(scanf(“%d:%c:%f%d:%c:%f”,&a,&ch,&m);,&a,&ch,&m);从键盘输入以下数据:从键盘输入以下数据:5:a:b5:a:b,则,则程序终止程序终止。2023/3/1036scanf运行时注意事项运行时注意事项4.4.如果连续输入多个字符型数据,空格也将作为字符接

41、收。charm,n,t;scanf(“%c%c%c”,&m,&n,&t);printf(“m=%cnn=%cnt=%cn”,m,n,t);scanf运行时从键盘输入a=b=c,则输出结果m=n=t=ab2023/3/10373.3 3.3 程序举例程序举例 例例3.13.1输输入入圆圆的半径,的半径,输输出出圆圆的周的周长长和面和面积积。分析:分析:1.定义实型变量r、l、s用于存放半径、周长、面积;2.调用输入函数,输入r:3.分别利用周长公式和面积公式求出l、s;4.调用输出函数输出l、s。#include#includemain()main()floatrfloatr,l l,s s;s

42、canf(scanf(“%f%f”,&r)&r);l=2*3.14159*rl=2*3.14159*r;s=3.14159*r*rs=3.14159*r*r;printf(printf(“nl=%.4fnl=%.4f”,l)l);printf(printf(“ns=%.4fns=%.4f”,s)s);2023/3/1038总结:总结:1 1、数据、数据、数据、数据类类型型型型转换转换(自(自(自(自动转换动转换、赋值转换赋值转换和和和和强强制制制制转换转换)。)。)。)。2 2、顺序结构程序设计、顺序结构程序设计、顺序结构程序设计、顺序结构程序设计(1 1)C C语言的基本语句:简单语句,复合

43、语句语言的基本语句:简单语句,复合语句语言的基本语句:简单语句,复合语句语言的基本语句:简单语句,复合语句(2 2)C C语言的输入输出函数:语言的输入输出函数:语言的输入输出函数:语言的输入输出函数:字符输入函数:字符输入函数:字符输入函数:字符输入函数:getchar()getchar();字符输入函数:字符输入函数:字符输入函数:字符输入函数:putchar(putchar(函数参数函数参数函数参数函数参数);格式输出函数:格式输出函数:格式输出函数:格式输出函数:printf(printf(“格式控制符格式控制符格式控制符格式控制符”,输出项列表,输出项列表,输出项列表,输出项列表)格

44、式输入函数:格式输入函数:格式输入函数:格式输入函数:scanf(“scanf(“格式控制符格式控制符格式控制符格式控制符”,地址列表,地址列表,地址列表,地址列表)2023/3/1039课后练习:课后练习:1、习题3第第1、2题(p42).2、输入任意一个入任意一个3位数,将其各位数字反序位数,将其各位数字反序输出(例如出(例如输入入123,输出出321).2023/3/10401 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1-1的原码:-1的反码:1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0-1的补码:1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com