资源描述:
《数据输入与输出函数》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据输入与输出函数
输出函数:
Putchar(C)
Printf(“”)
输入函数
Getchar()
Scanf()
putchar函数的作用是向终端输出一个字符:例如putchar(c);
输出字符变量c的值。c可以是字符型变量或整型变量。
在使用标准I/O库函数时,要用预编译命令“#include”将“stdio.h文件包括到用户源文件中。即#include“stdio.h”
。在需要使用标准I/O库中的函数时,应在程序前使用上述预编译命令,但在用printf和scanf函数时,则可以不要(只有printf和scanf
2、例外)。
「例]
#include“stdio.h”
main()
{chara,b,c;
a=‘B’;b=’O’;c=’Y’;
putchar(a);putchar(‘’);putchar(b);putchar(c);
}
printf函数(格式输出函数)
它的作用是向终端(或系统隐含指定的输出设备)输出若干个任意类型的数据(putchar只能输出字符,而且只能是一个字符,而printf可以输出多个数据,且为任意类型)。
一、printf函数的一般格式为
printf(格式控制,输出表列)
“格式控制”是用双引号括起来的
3、字符串,也称“转换控制字符串”,它包括两种信息:
1.格式说明,由“%”,和格式字符组成,如%d,%f等。它的作用是将输出的数据转换为指定的格式输出。格式说明总是由“%”字符开始的。
2.普通字符,即需要原样输出的字符。•“输出表列”是需要输出的一些数据,可以是表达式。例如:•printf(”a=%db=%d”,a,b);•printf(”a+b=%d,a-b=%”,a+b,a-b);•格式说明输出表列•在上面双引号中的字符除了“%d”以外,还有非格式说明的普通字符,它们按原样输出。如果a、b值分别为3、4,则输出为•a=3b=
4、4•二、格式字符•对不同类型的数据用不同的格式字符。有以下几种格式字符:•1.d格式符。用来输出十进制整数。有以下几种用法:•(1)%d,按整型数据的实际长度输出(见上面)。•(2)%md,m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出,如•printf(“%4d,%4d”,a,b)•若a=123,d=12345,则输出结果为:123,12345•(3)%ld,输出长整型数据。如•1onga=135790;•printf(”%ld,a);•如果用%d输出,就会发生错误,对1ong型数据
5、应当用%ld格式输出。对长整型数据也可以指定字段宽度,如将上面printf函数中的“%ld”改为“%81d”则输出为•135790•8列•一个int型数据可以用%d或%ld格式输出。•2. O格式符,以8进制数形式输出整数。由于是将内存单元中的各位的值(0或1)按八进制形式输出,因此输出的数值下带符号,即将符号位也一起作为八进制数的一部分输出。例如,-1在内存单元中(以补码形式存放)如下:•a=-11111111111111111•inta=-1•printf(”%d,%o”,a,a);•输出为•-1,177777•不会输出带负
6、号的八进制整数。对长整数(1ong型)可以用“%1o。”格式输出。同样可以指定字段宽度,如printf(”%8o”,a)输出数据为177777。•3·x格式符,以16进制数形式输出整数,同样不会出现负的十六进制数。例如:•inta=一1;•printf(”%x,%0,%d”,a,a,a);•输出结果为•ffff,177777,-1•同样可以用“%lx”输出长整型数,也可以指定输出字段的宽度,如“%12x”•4.u格式符,用来输出unsigned型数据,即无符号数,以十进制形式输出。•一个有符号整数(int型)也可以用%u格式输出
7、;反之,一个unsigned型数据也可以用%d格式输出。按相互赋值的规则处理。unsigned型数据也可用%o或%x格式输出。unsignedinta=65535;intb=-2;printf(”a=%d,%o,%x,%u”,a,a,a,a);printf(”a=%d,%o,%x,%u”,b,b,b,b);运行结果为:a=一1,177777,ffff.65535b=一2.177776,fffe,65534注意:1111111111111110b=-21111111111111111a=65535•5.c格式符,用来输出一
8、个字符。如:•charc=’a’;prinft(”%c”,c);•输出字符‘a’,请注意:“%c”中的c是格式符,逗号右边的c是变量名,不要搞混。•一个整数,只要它的值在0~255范围内,也可以用字符形式输出,在输出前,将该整数转换成相应的ASCII字符;反之,