




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C中格式字符串的一般形式为: 标志输出最小宽度.精度长度类型其中方括号中的项为可选项。各项的意义介绍如下:1.类型类型字符用以表示输出数据的类型,其格式符和意义下表所示:表示输出类型的格式字符 格式字符意义a 浮点数、十六进制数字和p-计数法(C99)A 浮点数、十六进制数字和p-计数法(C99)c 输出单个字符d 以十进制形式输出带符号整数(正数不输出符号)e 以指数形式输出单、双精度实数E 以指数形式输出单、双精度实数f 以小数形式输出单、双精度实数g 以%f%e中较短的输出宽度输出单、双精度实数,%e格式在指数小于-4或者大 于等于精度时使用G 以%f%e中较短的输出宽度输出单、双精度实数,%e格式在指数小于-4或者大于等于精度时使用i 有符号十进制整数(与%d相同)o 以八进制形式输出无符号整数(不输出前缀O)p 指针s 输出字符串x 以十六进制形式输出无符号整数(不输出前缀OX)X以十六进制形式输出无符号整数(不输出前缀OX)u 以十进制形式输出无符号整数/* 测试常见的输出类型 */#include stdio.h#include conio.hmain() printf(The program test print style!n); /* 以十进制形式输出带符号整数(正数不输出符号) */ printf(%dn , 223); printf(%dn , -232); printf(n); /* 以八进制形式输出无符号整数(不输出前缀O) */ printf(%on , 223); printf(%on , -232); printf(n); /* 以十六进制形式输出无符号整数(不输出前缀OX) */ printf(%xn , 223); printf(%xn , -232); printf(n); /* 以十进制形式输出无符号整数 */ printf(%un , 223); printf(%un , -232); printf(n); /* 以小数形式输出单、双精度实数 */ printf(%fn , 223.11); printf(%fn , 232.11111111); printf(%fn , -223.11); printf(%fn , -232.11111111); printf(n); /* 以指数形式输出单、双精度实数 */ printf(%en , 223.11); printf(%en , 232.11111111); printf(%en , -223.11); printf(%en , -232.11111111); printf(n); /* 以%f%e中较短的输出宽度输出单、双精度实数 */ printf(%gn , 223.11); printf(%gn , 232.111111111111); printf(%gn , -223.11); printf(%gn , -232.111111111111); printf(n); /* 输出单个字符 */ printf(%cn , a); printf(%cn , 97); printf(n); /* 输出单个字符 */ printf(%sn , this is a test!); printf(%sn , 2342o34uo23u); printf(n); getch();2.标志标志字符为-、+、#、空格和0五种,其意义下表所示:标志格式字符 标 志 意 义- 结果左对齐,右边填空格+ 输出符号(正号或负号)空格 输出值为正时冠以空格,为负时冠以负号# 对c,s,d,u类无影响;对o类,在输出时加前缀0;对x类, 在输出时加前缀0x或者0X;对g,G 类防止尾随0被删除; 对于所有的浮点形式,#保证了即使不跟任何数字,也打印一个小数点字符0 对于所有的数字格式,用前导0填充字段宽度,若出现-标志或者指定了精度(对于整数),忽略3.输出最小宽度用十进制整数来表示输出的最少位数。若实际位数多于定义的宽度,则按实际位数输出,若实际位数少于定义的宽度则补以空格或0。/* 测试标志字符为-、+、#、空格四种 */#include stdio.h#include conio.hmain() /* 以十进制形式输出带符号整数(正数不输出符号) */ printf(*%-10d*n, 223); printf(*%+10d*n , -232); printf(*%2d*n , 223); printf(*%#d*n , -232); printf(n); getch(); /* 以八进制形式输出无符号整数(不输出前缀O) */ printf(*%-10o*n , 223); printf(*%+10o*n , -232); printf(*%o*n , 223); printf(*%#o*n , -232); printf(n); getch(); /* 以十六进制形式输出无符号整数(不输出前缀OX) */ printf($%-10x$n , 223); printf($%010x$n , -232); printf($% x$n , 223); printf($%#x$n , -232); printf(n); /* 以十进制形式输出无符号整数 */ printf(%-10un , 223); printf(%+10un , -232); printf(% un , 223); printf(%#un , -232); printf(n); getch(); /* 以小数形式输出单、双精度实数 */ printf(%-10fn , 223.11); printf(%+10fn , 232.11111111); printf(% fn , -223.11); printf(%#fn , -232.11111111); printf(n); getch(); /* 以指数形式输出单、双精度实数 */ printf(%-10en , 223.11); printf(%+10en , 232.11111111); printf(% en , -223.11); printf(%#en , -232.11111111); printf(n); getch(); /* 以%f%e中较短的输出宽度输出单、双精度实数 */ printf(%-10gn , 223.11); printf(%+10gn , 232.111111111111); printf(% gn , -223.11); printf(%#gn , -232.111111111111); printf(n); getch(); /* 输出单个字符 */ printf(%-10cn , a); printf(%+10cn , 97); printf(% cn , a); printf(%#cn , 97); printf(n); getch(); /* 输出单个字符 */ printf(%-20sn , this is a test!); printf(%+20sn , 2342o34uo23u); printf(% 20sn , this is a test!);/* 不足补空格 */ printf(%#sn , 2342o34uo23u); printf(n); getch(); 4.精度精度格式符以“.”开头,后跟十进制整数。本项的意义是:如果输出数字,则表示小数的位数;如果输出的是字符,则表示输出字符的个数;若实际位数大于所定义的精度数,则截去超过的部分。/* 测试精度 */#include stdio.h#include conio.hmain() printf(%.3dn , 5555); getch(); printf(%.3fn , 0.88888); getch(); printf(%.3fn , 0.9999); getch(); printf(%.4sn , this is a test!); getch();5.长度长度格式符为h,l两种,h表示按短整型量输出,l表示按长整型量输出。 h和整数转换说明符一起使用,表示一个short int 或者unsigned short int类型的数值 ,示例:%hu,%hx,%6.4hd hh和整数转换说明符一起使用,表示一个short int 或者unsigned short类型的数值 ,示例:%hhu,%hhx,%6.4hhd j和整数转换说明符一起使用,表示一个intmax_t或者uintmax_t类型的数值 ,示例:%jd,%8jx l和整数转换说明符一起使用,表示一个long int 或者unsigned long int类型的数值 ,示例:%ld,%8lu ll和整数转换说明符一起使用,表示一个long int 或者unsigned long int类型的数值 (C99),示例:%lld,%8llu L和浮点转换说明符一起使用,表示一个long double的值,示例:%Lf,%10.4Le t和整数转换说明符一起使用,表示一个ptrdiff_t值(两个指针之间的差相对应的类型)(C99),示例:%td,%12ti z和整数转换说明符一起使用,表示一个size_t值(sizeof返回的类型)(C99),示例:%zd,%12zxmain()int a=15; float b=138.3576278; double c=35648256.3645687; char d=p; printf(a=%d,%5d,%o,%xn,a,a,a,a); printf(b=%f,%lf,%5.4lf,%en,b,b,b,b); printf(c=%lf,%f,%8.4lfn,c,c,c); printf(d=%c,%8cn,d,d);a-15b-138.3576278c-35648256.3645687d-p main() int a=29; float b=1243.2341; double c=24212345.24232; char d=h; printf(a=%d,%5d,%o,%xn,a,a,a,a); /* 其中“%f”和“%lf ”格式的输出相同,说明“l”符对“f”类型无影响 * “%5.4lf”指定输出宽度为5,精度为4,由于实际长度超过5故应该按实际位数输出,小数位数超过4位 * 部分被截去 */ printf(b=%f,%lf,%5.4lf,%en,b,b,b,b); /* 输出双精度实数,“%8.4lf ”由于指定精度为4位故截去了超过4位的部分 */ printf(c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度新型车库照明系统升级改造与定期维护服务协议
- 2025年城市社区健康服务采购协议书模板
- 2025年全球化工项目原料采购及质量控制合同协议
- 2025年度高端医疗影像设备全面维护与升级服务协议
- 2025年个性化别墅租赁合同定制签订流程解析
- 2025年校园清洁保洁与安保服务派遣合同范本
- 2025年度道路交通事故车辆评估与全额赔偿协议书
- 2025年特殊教育学校校车租赁与综合车辆保养维修合同
- 2025年度虚拟现实游戏团队选手专属服务协议
- 2025年医疗器械全生命周期维护与安全评估合同
- 2025年内河船员考试(船舶辅机与电气2203·一类三管轮)历年参考题库含答案详解(5套)
- 农村土地确权课件
- 2024年黔西南州畅达交通建设运输有限责任公司招聘考试真题
- (高清版)T∕CES 243-2023 《构网型储能系统并网技术规范》
- 公共场所卫生管理员安全教育培训手册
- 2025年全国高校辅导员素质能力大赛基础知识测试题及答案(共3套)
- 大气监测培训课件
- 财政分局对账管理制度
- 2025年河南省中考历史试卷真题(含答案)
- 标准预防与手卫生
- 工程量计算培训课件
评论
0/150
提交评论