数据的输入和输出
printf函数输出
printf(格式控制,输出表列)
- 格式控制
- 格式声明
- 由%和格式字符组成
- 格式字符
-
d:输出有符号的十进制整数
- 可以在格式声明中指定输出数据的域宽,
%5d
表示输出数据占5列
- 可以在格式声明中指定输出数据的域宽,
-
c:输出一个字符
char ch =’a’; printf("%c",ch);//最后输出“a” char ch =’a’; printf("%5c",ch);//指定域宽,最后输出“ a”(a前面有4个空格) short a=121; printf("%c",a);//最后输出y(ASCII码) int a=377; printf("%c",a);//最后输出y(ASCII码),把最后一个字节信息以字符形式输出
-
s:输出字符串
-
f:输出实数,以小数形式输出
-
基本型:%f
//用%f输出实数,只得到6位小数 #include<stdio.h> int main() { double a=1.0; printf("%f\n",a/3);//系统处理方法小数一般6位 return 0 }
-
指定数据宽度和小数位数:%m.nf(输出数据占m列;n位小数)
-
输出数据向左对齐:%-m.nf
- 数据长度不超过m时,数据靠左,右补空格
-
-
e:指数形式输出实数
-
其他:i(和d一样);o(八进制整数输出);x(十六进制整数输出);u(unsigned无符号十进制);g(选择f或者e输出,选择其中长度较短的格式)
-
- 普通字符
- 原样输出
- 格式声明
- 输出表列
scanf函数输入
scanf(格式控制,地址表列/变量地址)
-
格式声明(和printf类似)
-
地址列表
scanf("%f",&a);//&不能没有
- 使用%c时,空格字符和“转义字符”中的字符都作为有效字符输入(因此输入要连续,不要有空格)
- 输入时遇到不属于数值的字符认为数据结束