




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言输入输出函数printf与scanf的用法格式printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入设备(键盘)上读数据。下面详细介绍这两个函数的用法。 一、printf()函数 printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。printf()函数的调用格式为: printf(, ); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式控制字符, 以%开始, 后跟一个或几个控制字符,用来确定输出内容格式。参量表是需要输出的一系列参数,可以是常量、变量或表达式,其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用,分开, 且顺序一一对应, 否则将会出现意想不到的错误。 正常字符参量表例如:printf(a=%d b=%d,a,b);格式控制字符 1. 格式控制符Turbo C2.0提供的格式化规定符如下: 符号 作用 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e,%E 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %o 无符号以八进制表示的整数 %g,%G 自动选择合适的表示法printf的附加格式说明字符字符说明l用于长整型数或双精度实型,可加在格式符d、o、x、u和f前面m(代表一个正整数)数据最小输出显示宽度n(代表一个正整数)对实数,表示输出n位小数;对字符串,表示截取的字符个数。-输出的数字或字符在域内向左靠,即位数不足时右补空格。 说明:在输出时,对不同类型的数据要使用不同的格式字符。常用的有以下几种:(1) d格式符。用来输出十进制整数。 %d。按十进制整型数据的实际长度输出。 %md。M为指定的输出字段宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。例如:printf(%4d,%4d,a,b);若a=123,b=12345,则输出结果为 _123,12345 %ld。输出长整型数据,例如long a=135790;printf(%ld,a);如果用%d输出,就会发生错误,因为整型数据的取值范围为-3276832767。对于long型数据应当用%ld格式输出。对长整型数据也可以指定字段宽度,如将上面printf函数中的“%ld”改为“%8ld”,则输出为_ _ 135790一个int型数据可以用%d或%ld格式输出。(2) o格式符。以八进制整数形式输出。由于是将内存单元中的各位的值(0/1)按八进制形式输出,因此输出的数值不带符号,即将符号位也一起作为八进制数的一部分输出。例如:int a=-1;printf(%d,%o,a,a);-1在内存单元中的存放形式(以4个字节补码形式存放)如下: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,37777777777不会输出带负号的八进制整数。对长整型(long型)可以用“%lo”格式输出。同样可以指定字段宽度,例如:printf(%13o,a);_ _ 37777777777(3) x格式符。以十六进制数形式输出整数。同样不会出现负的十六进制数。例如:int a=-1;printf(%x,%o,%d,a,a,a);输出结果为ffffffff,37777777777,-1同样可以用“%lx”输出长整型数,也可以指定输出字段的宽度,例如“%12x”。(4) u格式符。用来输出unsigned型数据,即无符号数,以十进制整数形式输出。一个有符号整数(int型)也可以用%u格式输出;反之,一个unsigned型数据也可以用%d格式输出。按相互赋值的规则处理。Unsigned型数据也可以用%o和%x格式输出。(5) c格式符。用来输出一个字符。例如:char c=a;printf(%c,c);输出字符a,请注意:“%c”中的c是格式符,逗号右边的c是变量名,不要混淆。一个整数,只要它的值在0255范围内,也可以用“%c”使之按字符形式输出,在输出前,系统会将该整数作为ASCII码转换成相应的字符;反之,一个字符数据也可以用整数形式输出。例如:char c=a;int i=97;printf(%c,%dn,c,c);printf(%c,%dn,i,i);运行结果为:a,97a,97也可以指定输出字数宽度,例如:printf(%3c,c);(6) s格式符,用来输出一个字符串,有几种用法: %s。例如:printf(%s,CHINA);输出字符串“CHINA”(不包括双引号)。 %ms。输出的字符串占m列,如字符串本身长度大于m,则突破m的限制,将字符串全部输出,若串长小于m,则左补空格。 %-ms。跟以上的区别就是右补空格。 %m.ns。输出的字符串占m列,只取字符串左端n个字符,不足位数,左补空格。 %-m.ns。跟以上的区别就是右补空格。(7) f格式符。用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法: %f,不指定字段宽度,由系统自动指定,整数部分全部输出,并输出6位小数。单精度实数的有效位数一般为7位(包括整数和小数位数)。例如:float x,y;x=111111.111;y=222222.222;printf(%fn,x+y);输出结果为:333333.328125显然,只有前7位数字是有效数字,千万不要以为凡是计算机输出的数字都是准确的。双精度数也可以用%f格式输出,它的有效位数一般为16位,给出小数6位。 %m.nf,指定输出的数据共占m列,其中有n位小数。长度不够,左补空格。 %-m.nf,右补空格。(8) e格式符。以指数形式输出实数。详细情况参阅谭浩强的C语言程序设计。(9) g格式符。用来输出实数,它根据数值的大小,自动选择f格式或e格式。详细情况参阅谭浩强的C语言程序设计。(10) 2. 一些特殊规定字符 字符 作用 n 换行 f 清屏并换页 r 回车 t Tab符 xhh 表示一个ASCII码用16进表示, 其中hh是1到2个16进制数 C程序中的第一条语句#include的含义是调用另一个文件stdio.h, 这是一个头文件, 其中包括全部标准输入输出库函数的数据类型定义和函数说明。 C编译器(Turbo C或VC+6.0)对每个库函数使用的变量及函数类型都已作了定义与说明, 放在相应头文件*.h中, 用户用到这些函数时必须要用#include或#include*. h 语句调用相应的头文件, 以供连接。若没有用此语句说明, 则连接时将会出现错误。但有些编译器已经将常用的头文件默认包含,可以将语句:#include省略,但是要根据编译器而定。 二、scanf()函数 scanf()函数是格式化输入函数, 它从标准输入设备(键盘) 读取输入的信息。其调用格式为: scanf(, ); 格式化字符串包括以下三类不同的字符; 1. 格式化说明符: 格式化说明符与printf()函数中的格式说明符基本相同。 2. 空白字符: 空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符。 3. 非空白字符: 一个非空白字符会使scanf()函数在读入时剔除掉与这个非空白字符相同的字符。 地址表是需要读入的所有变量的地址, 而不是变量本身。这与printf()函数完全不同, 要特别注意。各个变量的地址之间同,分开。 例2: main() int i, j; printf(i, j=?n); scanf(%d, %d, &i, &j); 上例中的scanf()函数先读一个整型数, 然后把接着输入的逗号剔除掉, 最后读入另一个整型数。如果,这一特定字符没有找到, scanf()函数就终止。若参数之间的分隔符为空格, 则参数之间必须输入一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆市西南师大附中09-10学年高一下学期期中考试(化学)
- 幼儿园食堂餐饮从业人员食品安全知识培训考核试题(附答案)
- 2025年事业单位工勤技能-湖南-湖南客房服务员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖北-湖北园林绿化工四级(中级工)历年参考题库典型考点含答案解析
- 2025年互联网广告精准投放算法在智能零售行业的应用效果评估报告
- 2025年事业单位工勤技能-海南-海南工程测量员四级(中级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-海南-海南医技工二级(技师)历年参考题库含答案解析
- 2024版年会场地出租合同
- 2024版房产抵押的借款合同
- 2025年事业单位工勤技能-河北-河北放射技术员一级(高级技师)历年参考题库含答案解析
- 2024年江苏省南京市中考数学试卷真题(含答案逐题解析)
- 儿童保健工作规范和技术规范
- 2025年区块链应用操作员职业技能竞赛理论参考试指导题库500题(含答案)
- 福建地区 绿色食品琯溪蜜柚生产操作规程
- 人工智能智能客服系统
- 民办学校教职工学年度考核方案模版(3篇)
- 集团公司司库管理办法
- 住院患儿实施院内转运临床实践指南2023版课件
- 停工期间安全保障措施方案
- 供水管网工程监理实施细则
- 2024-2025学年中职数学基础模块 下册高教版(2021·十四五)教学设计合集
评论
0/150
提交评论