- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0
输出数值时指定左面不使用的空位置自动填0
#
在八进制和十六进制数前显示前导0,0x
在d,o,x,u前,指定输出精度为long型
l
在e,f,g前,指定输出精度为double型
第11页
例 m.n 例 int a=1234;
第三章 结构化程序设计
float f=123.456;
char ch=‘a’;
printf(“%8d,%2d\n”,a,a);
A ABC
e,E 指数形式浮点小数{ puprnrisnifiltnogfat(nt“feaa(d==“5%i6n7adt.=7,%8ub9d=;=p6%r,5in5dtb3f\(=n5“%%”;d,ea\”,b,na)”);; ,a,b);5.677890e+02
f 小数形式浮点输小出数结pr果inflt:ofa(t”3au==45%67d.7\8n9";,pur)in;tf(“%f”,a);
格式字符 c
d或i o
x或X
u f e或E g或G s p %
说
明
输出一个字符
输出带符号的十进制整型数
以八进制无符号形式输出整型数(不带前导0)
以十六制无符号形式输出整型数(不带前导0x或0X)。对x用abcdef输出;对X用 ABCDEF输出。
按无符号的十进制形式输出整型数
以带小数点的形式输出单精度和双精度数
ff
o 八进制无符号整数 int a=65;printf(“%o”,a);
101
u 不带符号十进制整数 int a=567;printf(“%u”,a);
567
c s
单一字符 字符串
例 init natc=h3aa,rb=a=3=46,5;b;=pr4in;tf(“%c”,a); 例 mpprairinnitp(fnr)(it“nf%tf((d““%%s%”d,“\nA%”Bd,Ca\,”nb)”;); ,a,b);
第三章 结构化程序设计
第三章 结构化程序设计 第2页
第三章 结构化程序设计 第3页
C语句可分为五类: 1.表达式语句; 2.函数调用语句; 3.控制语句; 4.复合语句; 5.空语句。
第4页
第三章 结构化程序设计
第三章 结构化程序设计
§3.3 数据输入/输出
在C语言中,没有专门的输入输出语句,所有的数据输入/输出都是由 库函数完成的。它们都是函数语句。最常用的输出函数有printf函数和 putchar函数等。printf函数称为格式输出函数,其关键字最末一个字母 f即为“格式”(format)之意。其作用是按指定的格式,把相关的数据显 示到显示器上。输入/输出标准库函数原型在头文件“stdio.h”中,如 果使用其中函数,必须在程序的开头写上#include<stdio.h>。该命令 是预处理语句,不是真正的C命令语句,所以后面不要写“;”。下面分 别介绍常用的输入输出函数,要了解其他输入输出函数,查阅C语言函数 库。
第7页
第三章 结构化程序设计
printf函数格式字符串 格式字符串的一般形式为:
[标志][输出最小宽度][.精度][长度]类型 printf函数的返回值,是本次调用中输出字符的个数。
第8页
第三章 结构化程序设计源自printf函数中常用的格式说明 每个格式说明都必须用“%”开头,以一个格式字符作结束。
printf(“%f,%8f,%8.1f,%.2f,%.2e\n”,f,f,f,f,f);
printf(“%3c\n”,ch);
运行
1234,1234
结果: 123.456000,123.456000, 123.5,123.46,1.23e+02
a
例 static char a[]=“Hello,world!” printf(“%s\n%15s\n%10.5s\n%2.5s\n%.3s\n”,a,a,a,a,a);
第5页
第三章 结构化程序设计
printf函数 1.printf函数调用的一般形式为:
printf(“格式控制字符串”,输出表列);
第6页
第三章 结构化程序设计
例3.1: void main() {
int a=65,b=66; printf("%d %d\n",a,b); printf("%d,%d\n",a,b); printf("%c,%c\n",a,b); printf("a=%d,b=%d",a,b); } 程序运行后结果如下: 65 66 65,66 A,B a=65,b=66 在这个例子中四次输出了a,b的值,但由于格式控制串不同,输出的结果也不相同。
以指数形式输出实数,隐含精度为6,对E用输出大写形式
由系统决定使用f或e格式,以使输出宽度最小
输出字符串,直到遇到“\0”,或输出由精度指定的字符数
输出变量的内存地址
输出一个%字符
第9页
格式字符:
第三章 结构化程序设计
d,i 十进制整数
int a=567;printf ( “%d”,a);
567
x,X 十六进制无符号整数 int a=255;printf(“%x”,a);
输出转换:格式字符与输出项类型不一致,自动按指定格式输 出
附加格式说明符(修饰符)
第三章 结构化程序设计
修饰符
功
能
m 输出数据域宽,数据长度<m,左补空格;否则按实际输出
.n
对实数,指定小数点后位数(四舍五入) 对字符串,指定实际输出位数
-
输出数据在域内左对齐(缺省右对齐)
+
指定在有符号数的正数前显示正号(+)
567.789000
g e和f中较短一种 } floataa==356, 7b.=7849;printf(“%g”,a);
567.789
%% 百分号本身输出结果p:rinut=f(-“%1 %”);
%
第10页
说明 格式字符要用小写
11 11 11 11 11 11 11 11 65535
格式字符与输出项个数应相同,按先后顺序一一对应
运行结果:Hello,world!
Hello,world!
Hello
Hello
第12页
Hel
第三章 结构化程序设计
例例 int a=1234; float f=123.456; static char c[]=“Hello,world!”; printf(“%8d,%-8d\n”,a,a); printf(“%10.2f,%-10.1f\n”,f,f); printf(“%10.5s,%-10.3s\n”,c,c);