资源描述:
《c语言第3讲顺序结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3讲顺序结构程序设计为了让计算机处理各种数据,首先就应该把源数据输入到计算机中;计算机处理结束后,再将目标数据信息以人能够识别的方式输出。C语言中的输入输出操作,是由C语言编译系统提供的库函数来实现。3.1格式化输出——printf()函数3.2格式化输入——scanf()函数3.3单个字符输入输出——getchar()和putchar()函数3.1格式化输出——printf()函数printf()函数的作用:向计算机系统默认的输出设备(一般指终端或显示器)输出一个或多个任意类型的数据。3.1.1printf()函数的一般格式[案例3.1]已知
2、圆半径radius=1.5,求圆周长和圆面积。/*案例代码文件名:AL3_1.C。*/#includemain(){floatradius,length,area,pi=3.1415926;radius=1.5;length=2*pi*radius;/*求圆周长*/area=pi*radius*radius;/*求圆面积*/printf(“radius=%f”,radius);/*输出圆半径*/printf(“length=%7.2f,area=%7.2f”,length,area);/*输出圆周长、面积*/
3、}程序运行结果如下:radius=1.500000length=9.42,area=7.07printf()函数的一般格式如下:printf("格式字符串"[,输出项表]);1.格式字符串。“格式字符串”也称“转换控制字符串”,可以包含三种字符:(1)格式指示符——格式说明部分:%[flags][width][.prec][F
4、N
5、h
6、L][type]Flags为可选择的标志字符:常用的有:-——左对齐输出,默认为右对齐输出;+——正数输出加号,负数输出减号;空格——正数输出空格代替加号,负数输出减号Width为可选择的宽度指示符.prec为可选
7、的精度指示符(2)转义字符例如,[案例3.1]中printf()函数中的''就是转义字符,输出时产生一个“换行”操作。(3)普通字符──除格式指示符和转义字符之外的其它字符。格式字符串中的普通字符,原样输出。例如,[案例3.1]中“printf("radius=%f",radius);”语句中的“radius=”,“printf("length=%7.2f,area=%7.2f",length,area);”语句中的“length=”、“area=”等都是普通字符。2.输出项表输出项表是可选的。如果要输出的数据不止1个,相邻2个之间用
8、逗号分开。下面的printf()函数都是合法的:(1)printf("Iamastudent.");(2)printf("%d",3+2);(3)printf("a=%fb=%5d",a,b+3);必须强调:(1)“格式字符串”中的格式指示符,必须与“输出项表”中、输出项的数据类型一致,否则会引起输出错误。(2)如果格式说明的个数少于输出项的个数,多余的输出项不予输出。如果格式说明的个数多于输出项的个数,多余的格式项输出不定值或0。3.1.2格式指示符输出不同类型的数据,要使用不同的类型转换字符。1.类型转换字符d──以带符号的十进制整数
9、形式输出。[案例3.2]类型转换字符d的使用。/*案例代码文件名:AL3_2.C。*/#includemain(){intnum1=123;longnum2=123456;/*用3种不同格式,输出int型数据num1的值*/printf("num1=%d,num1=%5d,num1=%-5d,num1=%2d",num1,num1,num1,num1);/*用3种不同格式,输出long型数据num2的值*/printf("num2=%ld,num2=%8ld,num2=%5ld",num2,num2,num2);}程序运
10、行结果如下:num1=123,num1=□□123,num1=123□□,num1=123num2=123456,num2=□□123456,num2=123456对于整数,还可用八进制、无符号形式(%o(小写字母o))和十六进制、无符号形式(%x、%X)输出。对于unsigned型数据,也可用%u格式符,以十进制、无符号形式输出。所谓无符号形式是指,不论正数还是负数,系统一律当作无符号整数来输出。例如,printf("%d,%o,%x",-1,-1,-1);2.类型转换字符f──以小数形式、按系统默认的宽度,输出单精度和双精度实数。[案例3
11、.3]类型转换字符f的使用。/*案例代码文件名:AL3_3.C。*/#includemain(){floatf=123