第3章顺序控制结构



《第3章顺序控制结构》由会员分享,可在线阅读,更多相关《第3章顺序控制结构(30页珍藏版)》请在文档大全上搜索。
1、第三章 顺序控制结构3.1 3.1 字符输入输出函数字符输入输出函数3.2 3.2 格式输入输出函数格式输入输出函数在使用标准在使用标准I/OI/O库函数时,要用预编译命库函数时,要用预编译命令令“#“#include”include”将将“stdio.h”(standardstdio.h”(standard input & output)input & output)头文件包含到用户的源头文件包含到用户的源程序中。即程序中。即 # #include include 常用的标准输入输出函数有两种:用于字常用的标准输入输出函数有两种:用于字符输入输出的函数符输入输出的函数( (g
2、etchar/putchargetchar/putchar) );用于格式输入输出的函数用于格式输入输出的函数( (scanf/printfscanf/printf) )。1 1、字符输出函数、字符输出函数putcharputchar 作用:作用:向标准输出设备输出一个字符,向标准输出设备输出一个字符,例如:例如:putchar(cputchar(c);); c c可以是字符变量或整型变量。字符输可以是字符变量或整型变量。字符输出不仅可以输出一般字符,也可以输出出不仅可以输出一般字符,也可以输出控制字符,如控制字符,如putchar(nputchar(n);输出输出一个换行符。一个换行符。 i
3、nclude main() char a, b, c; a=N;b=o;c=062; putchar(a); putchar(b); putchar(.); putchar(c); 运行结果如下:运行结果如下: No.22 2、字符输入函数、字符输入函数getchargetchar 作用:作用:向标准输出设备输入一个字符,向标准输出设备输入一个字符,该函数没有参数,其函数值就是从输入该函数没有参数,其函数值就是从输入设备得到的字符。函数调用的一般形式设备得到的字符。函数调用的一般形式为:为: getchargetchar()()#include main()char c1,c2;c1=getc
4、har();c2=getchar();putchar(c1);putchar(c2);运行情况如下:运行情况如下: xy xy注意:不能按如下形注意:不能按如下形式输入式输入 x y1 1、格式输出函数、格式输出函数printfprintf 作用:作用:向标准输出设备输出若干个任意类型的向标准输出设备输出若干个任意类型的数据。数据。 一般格式:一般格式: printfprintf(格式控制,输出参数表列);格式控制,输出参数表列); 格式说明,由和格式符组成如%d, %f等。普通字符,原样输出,它可以是一般字符,也可以是转义字符。是需要输出的一些对象,可以是常量、变量或表达式。 printf
5、(“a=%d, b=%d, a+b=%dnCONST:%dn ”, a, b, a+b,8) 如果如果a、b的值分别为的值分别为5、20,则输出结果为:,则输出结果为:a=5, b=20,a+b=25CONST:8如果要以普通字符的形式输出字符如果要以普通字符的形式输出字符,则只,则只需要连续使用两个字符即可,此时并不构成需要连续使用两个字符即可,此时并不构成格式控制。例如:格式控制。例如: printf(“%d%dn”, 8);则输出结果为:则输出结果为: d%8 0 m.n l和和h 格式字符格式字符格式说明的起始符号格式说明的起始符号指定左对齐输出指定左对齐输出指定空位填指定空位填0指定
6、输出域宽指定输出域宽指定输出精度指定输出精度输出长度修正输出长度修正指定输出类型指定输出类型Turbo C2.0Turbo C2.0提供的格式字符如下提供的格式字符如下: : 符号符号 作作 用用 %d 十进制有符号整数(整数不输出符号)十进制有符号整数(整数不输出符号)%u 十进制无符号整数十进制无符号整数%f 浮点数(隐含输出六位小数)浮点数(隐含输出六位小数)%s 字符串字符串%c 单个字符单个字符%p 指针的值指针的值%e,%E 指数形式的浮点数指数形式的浮点数%x,%X无符号以十六进制表示的整数(不输出前导符无符号以十六进制表示的整数(不输出前导符0X) %o 无符号以八进制表示的整
7、数(不输出前导符无符号以八进制表示的整数(不输出前导符0)%g,%G自动选择合适的表示法自动选择合适的表示法 main() long int a=-1; unsigned long u=65536; printf(“a: %d,%u,%o,%xn ”,a,a,a,a); printf(“a: %ld,%lu,%lo,%lxn ”,a,a,a,a); printf(“u:%ld,%lu,%lo,%lxn ”,u,u,u,u); 运行结果如下:运行结果如下:a:-1,65535,177777,ffffa:-1,4294967295,37777777777,ffffffffu:65536,65536
8、,200000,100000000 0000 0000 00011111 1111 1111 11101111 1111 1111 1111-1补码补码指定输出域宽指定输出域宽m.n及及 指定左对齐输出()指定左对齐输出() main()char c1=A; int c2=98; printf(“c1=%-3c,c2=%3cn”,c1,c2); print(“str1=%-8s,str2=%8sn”,”JXCJDX”,”JXCJDX”); print(“str3=%-8.2s,str4=%8.4sn”,”JXCJDX”,”JXCJDX”); print(“str5=%-.4s,str6=%.4
9、sn”,”information”,” information”); c1A ,c2= bstr1=JXCJDX ,str2= JXCJDXstr3=JX ,str4= JXCJstr5=info,str6=info void main() float f=123.456; printf(“%f,%10f,%10.2f,%.2f,%-10.2f.n”,f,f,f,f,f); 运行结果:运行结果: 123.456001,123.456001, 123.46, 123.46,123.46 . main()float a=1.23; printf(“%08.1f”,a);指定空位填指定空位填0输出结
10、果为:输出结果为:000001.2用用printfprintf函数输出时,要注意以下几点:函数输出时,要注意以下几点: 1、数据类型应与格式说明字符匹配,否则将会出、数据类型应与格式说明字符匹配,否则将会出现错误。现错误。 2、有些系统(如、有些系统(如TC)要求格式字符要用小写字母,要求格式字符要用小写字母,如如d不能写成不能写成D。 3、可以在格式控制字符串内包含转义字符,如可以在格式控制字符串内包含转义字符,如 n,t,077等。等。 4、上面介绍的上面介绍的d,o,x,u,c,s,f,e,g等字符,如用等字符,如用“”后面就作为格式符号,否则作为普通字符。如:后面就作为格式符号,否则作