数据输入输出
C语言中没有提供对数据的输入和输出语句。但提供了一些可完成数据输入输出的标准函数,4个基本输入和输出函数为:
getchar()、putchar()、printf()和scanf() 。
- putchar()函数
功能:向终端输出一个字符。
格式: putchar (ch)
#include "stdio.h"
int main()
{
char a,b,c;
a='B';b='O';c='Y';
putchar(a);
putchar(b);
putchar(c);
putchar('\n');
}
- printf()函数
printf("",1,2,3, LL)
%lm.n【格式字符】
格式字符 | |
d | 以带符号的十进制形式输出整数 |
o | 以八进制无符号形式输出整数 |
x | 以十六进制无符号形式输出整数 |
u | 以无符号十进制形式输出整数 |
c | 以无符号形式输出,只输出一个字符 |
s | 输出字符串 |
f | 以小数形式输出单双精度数,隐含输出6位数 |
e | 以标准指数形式输出单双精度数 |
g | 选用%f或%e格式输出宽度较短的一种格式,不能输出0 |
a=12 b=15
printf("a=%d b=%d",a,b);
输出 a=12 b=15
int a=-1; printf("%d,%u,%o,%x",a,a,a,a);
- getchar()函数
功能: 从输入设备输入一个字符。
格式: getchar ()
例 #include <stdio.h>
int main()
{
char c;
c=getchar();
putchar(c);
}
- scanf()函数
格式输入函数scanf()
功能:输入若干个任意类型的数据。
格式:scanf("格式控制",参数1,参数2,参数3, LL)
格式说明:由%后跟一个格式字符组成。中间可插入l、h、m、*几个附加字符。
普通字符:照原样输入。
格式字符 | |
d | 输入十进制整数 |
o | 输入八进制数 |
x | 输入十六进制数 |
c | 输入单个字符 |
s | 输入字符串 |
f | 输入实数 |
e | 与f作用相同 |
main()
{
int a; char b; float c;
scanf("%d%c%f", &a,&b,&c);
printf("%d,%c,%f\n",a,b,c);
}
附加格式说明字符:
字母l | 用于输入长整型数据,可加在格式符d,o,x,f,e前面 |
字母h | 用于输入短整型字符数据 |
m(一个正整数) | 指定输入数据所占宽度 |
* | 表示本输出项在读入后不赋值给相应的变量 |
例1 :scanf("%3d%3d",&a,&b);
若输入数据格式为:123456
则将123赋给a,456赋给b。
例2:scanf("%c%c%c",&c1,&c2,&c3);
若输入数据格式为: a b c
则将a赋给c1 空格赋给c2,b赋给c3。
例3:scanf("%d%c%f",&a,&b,&c);
若输入数据格式为:1234a123o.26
a:1234 b:a c:123
例4:scanf("%2d %*3d %2d",&a,&b);
若输入数据格式为: 12 345 67
则将12赋给a, 67赋给b。