材料机电11级C语言第三章.ppt

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
材料机电11级C语言第三章

表3-1 printf( )的基本格式码 % printf(%%); % % 0012FF74(a的地址) double a=123.456;printf(%p,a); 输出地址,格式由实现定义 p 123.456 double a=123.456;printf(%G,a); f和e中短者,不印无效0 g/G 1.234560E+002 double a=123.456;printf(%E,a); 科学记数法 e/E 123.456000 double a=123.456;printf(%f,a); 小数形式十进制 f abcde char s[]=”abcde”; printf(“%s”,s); 字符串 s D int a=68;printf(“%c”,a); 字符 c ee1cf int a=975311;printf(“%x”,a); 无符号十六进制定点格式 x/X 3560717 int a=975311;printf(“%o”,a); 无符号八进制定点格式 o 975310 int a=975311;printf(“%u”,a); 无符号十进制定点格式 u 975310 int a=975311;printf(“%d”,a); 带符号十进制定点格式 d/i 输出结果 举 例 输出说明 格式码 输出不同类型的数据,要使用不同的类型转换字符。 ①类型转换字符d──以带符号的十进制整数形式输出。 百分号 % 选用%f或%e格式中输出宽度较短的一种格式 g(G) 以标准指数形式输出单、双精度数,小数位数为6位 e(E) 以小数形式输出单、双精度数,隐含输出6位小数 f 输出字符串 s 以字符形式输出一个字符 c 以无符号10进制形式输出整数 u 以16进制无符号形式输出整数(不输出前导符Ox) x(X) 以8进制无符号形式输出整数(不输出前导符O) o 以带符号的十进制形式输出整数(正数不输出符号) d printf格式字符 例3-6 类型转换字符 d 的使用。 #include stdio.h void main() {int n1=123; long n2=123456; /*用4种不同格式,输出int型变量n1的值*/ printf(n1=%d,n1=%5d,n1=%-5d,n1=%2d\n,n1,n1,n1,n1); /*用3种不同格式,输出long型变量n2的值*/ printf(n2=%ld,n2=%8ld,n2=%5ld\n,n2,n2,n2); printf(n1=%ld\n,n1); } 程序运行结果如下: n1=123,n1=□□123,n1=123□□,n1=123 n2=123456,n2=□□123456,n2=123456 n1 对于整数,还可用八进制无符号形式(%o) (注意:这里的%o是小写字母o)输出或以十六进制无符号形式(%x)输出。对于unsigned型数据,也可用%u格式符以无符号十进制形式输出。 所谓无符号形式是指,不论正数还是负数,系统一律当作无符号整数来输出。 例如: printf(%d,%o,%x,%u\n,-1,-1,-1,-1); 显示结果为: -1,37777777777,ffffffff,4294967295 注意: 在TC下其结果为:-1,177777,ffff,65535 ②类型转换字符f──以小数形式、按系统默认的宽度,输出单精度和双精度实数。 例3-7 类型转换字符 f 的使用。 #include stdio.h void main( ) { float f=123.456; double d1,d2; d1=1111111111111.111111111; d2=2222222222222.222222222; printf(%f,%12f,%12.2f,%-12.2f,%.2f\n,f,f,f,f,f); printf(d1+d2=%f\n,d1+d2); } 程序运行结果如下: 123.456001,□□123.456001,□□□□□□123.46,123.46□□□□□□,123.46 d1+d2=3333333333333.333010 本例程序的输出结果中,数据123.456001和3333333333333.333010中的001和010都是无意义的,因为它们超出了有效数字的范围。 对于实数,也可使用格式符%e,以标准指数形式输出:尾数中的整数部分大于等于

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档