一、语句
以分号作为语句结束标志
(一)分类
1.控制语句
2.函数调用语句
3.表达式语句
4.空语句
5.复合语句
(二)输入输出
输入 --->计算机 --->输出
[内存]
c语言中用到的输入输出的功能 ,并不是c语言本身的一部分。而是用到了别人写好的输入输出的功能(函数)。
stdio //标准输入输出函数库中的函数
//standard input output //标准C库(函数库)中一部分
1、提供的函数:
getchar / putchar (单个字符输入输出)
scanf / printf (格式化的输入输出)
gets / puts (字符串的输入输出---数组)
Ⅰ:int getchar(void)
功能:
从键盘获得一个字符数据
参数:
void -- 不需要参数
返回值:
将获得到的字符的 ASCII码值 返回
Ⅱ: int putchar(int c);
功能:
将一个字符输出到终端
参数:
c 存放要输出字符的ASCII码值
返回值:
返回值的是 输出了的 字符的ASCII码值
Ⅲ:printf //格式化输出函数
int printf(const char *format, ...);
printf("格式控制字符串",输出的参数列表);
1.格式控制字符串:
普通字符 :原样输出
占位符 :用参数列表对应的数值 替换
整型:
%d -- 转换为 有符号 十进制形式 输出
%u -- 转换为 无符号 十进制形式 输出
%x -- 转换为 十六进制形式 输出
%X -- 转换为 十六进制形式 输出 输出结果中字符 都是大写形式
%o -- 转换为 八进制形式 输出
浮点型:
%f -- 转换为 小数形式输出,默认保留 6位 小数
%e -- 转换为 科学计数法形式 输出,指数部分 会显示 正负号 如果是一位数 则会补个0
取小数点,%g只会去得整数部分
%g -- 以一种 更简洁的方式输出 ,不会将多余0输出
字符型 :
%c -- 转换为 数值 对应 字符形式 输出
%s -- 以字符串的形式(一串字符)输出
辅助控制符:
#
%#x //将十六进制的前缀 0x 输出
%#o //将八进制的前缀 0 输出
m //数字
输出的数据宽度
m < 数据实际宽度 --- 以实际宽度为准
m > 数据实际宽度 --- 输出结果 默认右对齐 ,前面补空格
也可以补0
-m 左对齐 不能补0
.n n表示一个数字
%.nf //表示保留n位小数
%.ng //保留结果中的 n位 数字
%.ns //保留前n个字符
%ld l 表示 匹配 long int 类型
ll 表示 匹配 long long int 类型
h 表示 half 一半
hh 表示 一半的一半
%Lf //输出 long double类型的数据
注意:
1.占位符 与 参数 一一对应
2.参数个数 多余 占位符 ,编译报警,但并不影响运行结果
3.参数个数 少于 占位符 ,编译报警,多的占位符对应输出 随机值
2、输出的参数列表:
要输出的参数
参数 与 占位符 是一一对应的
如:
printf("hello world!\n");
printf("a = %c\n",a);
printf("a = %d b = %f\n",a,b);
Ⅳ:scanf();
int scanf(const char *format, ...);
scanf的格式:
scanf("格式控制字符串",地址列表);
格式控制字符串:
普通字符:原样输入
占位符 : 将键盘输入的数据 转换为 占位符 指定格式
整型
%d -- 转换为 有符号 十进制形式 输出
%u -- 转换为 无符号 十进制形式 输出
%x -- 转换为 十六进制形式 输出
%X -- 转换为 十六进制形式 输出 输出结果中字符 都是大写形式
%o -- 转换为 八进制形式 输出
浮点型
%f -- 转换为 小数形式输出,默认保留 6位 小数
%e -- 转换为 科学计数法形式 输出,指数部分 会显示 正负号 如果是一位数 则会补个0
%g -- 以一种 更简洁的方式输出 ,不会将多余0输出
字符型
%c -- 转换为 数值 对应 字符形式 输出 --- 键盘输入的 都可以被当作字符 %c 都能识别
%s -- 以字符串的形式(一串字符)输出
辅助控制符:
m //指定输入宽度
//浮点数中 小数点 也算一列宽度
.n //输入时,不能指定 精度
%lf //表示 给doule类型变量中输入数据
%f //float类型的变量中输入数据
%Lf //匹配 long double 类型变量
%d //默认是匹配 int类型变量
%ld //long int 类型
%lld //long long int 类型
注意:
1.scanf 读取(匹配)结束的条件
a.空白符、回车、Tab 、空格
b.遇到 非法字符
c.达到了指定的输入宽度
2.注意 ,scanf后面,是 地址值
3.格式字符串中出现空白符
作用//表示匹配任意多个空白符
4. getchar() //处理缓冲区中空白符
5、canf("%c %c",&a,&b); //空白符 会匹配任意多个空白符
6、%*d //匹配一个数据项