好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

ETemp第02章基本输入、输出和顺序程序设计.ppt

45页
  • 卖家[上传人]:公****
  • 文档编号:605164191
  • 上传时间:2025-05-19
  • 文档格式:PPT
  • 文档大小:804.50KB
  • / 45 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第,*,页,第2章 基本输入、输出和,顺序程序设计,第2章:基本输入输出和顺序程序设计,学习的意义,程序对数据的处理流程:,程序的主要功能就是对数据的处理,其整个流程主要包括数据的输入、数据的处理、数据的输出语言程序设计,第2章,基本输入输出和顺序程序设计,C,数据处理,数据输入,数据输出,C程序中如何实现数据输入?,C程序中如何实现数据输出?,程序的结构:,写文章有文章的结构,建房子有房子的结构,制造机械产品由机械产品的结构,那么编写程序是否有程序的结构呢?,学习的意义,程序结构,顺序结构,选择结构,循环结构,YES!,本章讨论,第3章讨论,第3章讨论,语言程序设计,第2章,基本输入输出和顺序程序设计,C,格式化输出,printf,格式化输入,scanf,字符数据的非格式化输入、输出,程序的控制结构,顺序程序设计举例,本讲小结,学习目标,掌握各种类型数据的格式化输入输出方法;,掌握字符数据的非格式化输入输出方法;,理解三种程序控制结构的流程图;,学会简单顺序程序的设计;,养成良好的程序设计习惯;,语言程序设计,第2章,基本输入输出和顺序程序设计,C,学习内容,2.1 格式化输出printf,语言程序设计,第2章,基本输入输出和顺序程序设计,C,一般格式,printf(格式控制字符串,表达式1,表达式2,表达式n);,功能,按照“格式控制字符串”的要求,将,表达式1,表达式2,表达式n,的值显示在计算机屏幕上。

      说明,格式控制字符串用于指定输出格式它包含两类字符:,常规字符:,包括可显示字符和用转义字符表示的字符格式控制符:,以%开头的一个或多个字符,以说明输出数据的类型、形式、长度、小数位数等其格式为:,%修饰符格式转换字符,例:,long int x=0 x8AB6;,printf(“,The Value of x is,%ld,n,”,x);,常规字符,常规字符,(转义符),格式控制符,(修饰符),格式控制符,(格式转换符),语言程序设计,第2章,基本输入输出和顺序程序设计,C,printf,使用时的注意事项,(1)格式控制字符串可以,不包含任何格式控制符,2)当格式控制字符串中既含有常规字符,又包含有格式控制符时,则,表达式的个数应与格式控制符的个数一致,此时,常规字符原样输出,而格式控制符的位置上输出对应的表达式的值,其对应的顺序是:,从左到右的格式控制符对应从左到右的表达式3),如果格式控制字符串中格式控制符的个数多于表达式的个数,则,余下的格式控制符的值将是不确定的,4),不同类型的表达式要使用不同的格式转换符,同一表达式如果按照不同的格式转换符来输出,其结果可能是不一样的printf(“how are you?n”);,/只有一个字符串参数,,输出为:,how are you?,printf(“how old are you?n”,20);,/带有两个参数,20没有意义,,输出为:,how old are you?,已 知:,int a=2;,函数调用:,printf(,a*a=,%d,a+5=,%d,n,a*a,a+5);,实际输出:,a*a=4,a+5=7,printf(5+3=%d,5-3=%d,5*3=%d,5+3,5-3);,输出结果将是:,5+3=8,5 3=2,,5*3=,-28710,输出随机,char ch=A;,printf(ch=%c,ch);,/,输出结果:ch=A,(以字符形式输出),printf(ch=%d,ch);,/输出结果:ch=65,(以A字符的ASCII码形式输出),语言程序设计,第2章,基本输入输出和顺序程序设计,C,printf,函数中的格式转换字符及其含义,格式转换符,含 义,对应的表达式数据类型,%d 或%i,以十进制形式输出一个整型数据。

      例如:,int a=20;,printf(%d,a);/输出20,有符号整型,%x,%X,以十六进制形式输出一个无符号整型数据例如:,int a=164;,printf(%x,a);/输出a4,printf(%X,a);/输出A4,无符号整型,%o (字母o),以八进制形式输出一个无符号整型数据例如:,int a=164;,printf(%o,a);/输出244,无符号整型,%u,以十进制形式输出一个无符号整型数据例如:,int a=-1;,printf(%u,a);/BC下输出65535,VC下4294967295,无符号整型,%c,输出一个字符型数据例如:,char ch=A;,printf(%c,ch);/输出A,字符型,语言程序设计,第2章,基本输入输出和顺序程序设计,C,printf,函数中的格式转换字符及其含义,格式转换符,含 义,对应的表达式数据类型,%s,输出一个字符串例如:,printf(my name is%s,“Anhuigongyedaxue);,/输出my name is Anhuigongyedaxue,字符串,%f,以十进制小数形式输出一个浮点型数据例如:,float f=-12.3;,printf(%f,f);/输出-12.300000,浮点型,%e,%E,以指数形式输出一个浮点型数据。

      例如:,float f=1234.8998;,printf(%e,f);/输出1.234900e+003,printf(%E,f);/输出1.234900E+003,浮点型,%g,%G,按照%f或%e中输出宽度比较短的一种格式输出浮点型,%p,以主机的格式显示指针,即变量的地址例如:,int a=2;,printf(“%p”,/BC下输出FFD8,,VC下 0012FF7C,指针类型,语言程序设计,第2章,基本输入输出和顺序程序设计,C,1.整数的输出,有符号,整数的输出,一般形式:,:,表示可选项,可缺省表示输出的数据左对齐,缺省时是右对齐输出正数时,在数的前面加上号数字,0,:,右对齐时,如果实际宽度小于,width,,则在左边的空位补,0,width,:,无符号整数,表示输出整数的最小域宽(即占屏幕的多少格)若实际宽度超过了,width,,则按照实际宽度输出precision,:,无符号整数,表示至少要输出,precision,位若整数的位数大于,precision,,则按照实际位数输出,否则在左边的空位上补,0,字母,l,:,如果在,d,的前面有字母,l,(,long,),表示要输出长整型数据。

      字母,h,:,如果在,d,的前面有字母,h,(,short,),表示要输出短整型数据说明:,%-+0 width.precision l h d,辅助格式控制字符(修饰符),语言程序设计,第2章,基本输入输出和顺序程序设计,C,【例】有符号整数的格式化输出,#include,void main(),int a=123;,long L=65537;,printf(a=%d-(a=%d)n,a);,printf(a=%6d-(a=%6d)n,a);,printf(a=%+6d-(a=%+6d)n,a);,printf(a=%-6d-(a=%-6d)n,a);,printf(a=%-06d-(a=%-06d)n,a);,printf(a=%+06d-(a=%+06d)n,a);,printf(a=%+6.6d-(a=%+6.6d)n,a);,printf(a=%6.6d-(a=%6.6d)n,a);,printf(a=%-6.5d-(a=%-6.5d)n,a);,printf(a=%6.4d-(a=%6.4d)n,a);,printf(L=%ld-(L=%ld)n,L);,printf(L=%hd-(L=%hd)n,L);,a=123-(a=%d),a=123-(a=%6d),a=+123-(a=%+6d),a=123 -(a=%-6d),a=123 -(a=%-06d),a=+00123-(a=%+06d),a=+000123-(a=%+6.6d),a=000123-(a=%6.6d),a=00123-(a=%-6.5d),a=0123-(a=%6.4d),L=65537-(L=%ld),L=1-(L=%hd),运行结果:,L是一长整型数65537,其值为十六进制0X0001,0001,,所以要将其转换成短整型,即取低16位,0 x0001,,将其输出,故输出为1。

      Why?,语言程序设计,第2章,基本输入输出和顺序程序设计,C,1.整数的输出,无符号,整数的输出,一般形式:,:,表示可选项,可缺省表示互斥关系表示当以八进制形式输出数据(,%o,)时,在数字前输出,0,;当以十六进制形式输出数据(,%x,或,%X,)时,在数字前输出,0 x,或,0X,precision,的含义与前面介绍的相同,但要注意,在,TC,和,BC,下,,precision,所指定的位数也包含了,0 x,或,0X,所占的位数,可在,VC,下,则不包含,0 x,或,0X,所占的位数其它字段的含义与前面介绍的相同说明:,%-#0 width.precision l h u|o|x|X,辅助格式控制字符(修饰符),语言程序设计,第2章,基本输入输出和顺序程序设计,C,【例】无符号整数的格式化输出,#include,void main(),int a=-1;,unsigned u=32767;,unsigned long L=-32768;,printf(a=%d,a=%u-(a=%d,a=%u)n,a,a);,printf(a=%hx,a=%X-(a=%hx,a=%X)n,a,a);,printf(u=%o,u=%X-(u=%o,u=%X)n,u,u);,printf(u=%#010X-(u=%#010X)n,u);,printf(u=%#10.10X-,(u=%#10.10X)n,u);,printf(L=%lX-,(L=%lX)n,L);,printf(L=%-#14.10X-,(L=%-#14.10X)n,L);,a=-1,a=65535,-(a=%d,a=%u),a=ffff,a=FFFF,-(a=%hx,a=%X),u=77777,u=7FFF-(u=%o,u=%X),u=0X00007FFF-(u=%#010X),u=0X00007FFF,-(u=%#10.10X),L=FFFF8000-(L=%lX),L=0X00008000,-(L=%-#14.10X),运行结果(在BC3.1下):,a=-1,a=4294967295,-(a=%d,a=%u),a=ffff,a=FFFFFFFF,-(a=%hx,a=%X),u=77777,u=7FFF-(u=%o,u=%X),u=0X00007FFF-(u=%#010X),u=0X0000007FFF,-(u=%#10.10X),L=FFFF8000-(L=%lX),L=0X00FFFF8000,-(L=%-#14.10X),运行结果(在VC6.0下):,11111111,1,1111111,111111111111111111111111,1,1111111,宽度包含,0X,宽度不包含,0X,1111111101111111,11111111011111110000000000000000,00000000100000001111111111111111,00000000100000001111111111111111,00000000100000001111111111111111,00000000100000001111111111111111,语言程序设计,第2章,基本输入输出和顺序程序设计,C,2.实数的输出,一般形式:,:,表示可选项,可缺省。

      表示互斥关系必须输出小数点precision,:,规定输出实数时,小数。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.