C语言学习笔记day4

1. putchar

1.1 功能:

在终端输出一个字符

注意:

1.只能打印 一个字符

2.只能打印字符

示例:

putchar('a');

putchar(100);

putchar('a'-32);

2. getchar

2.1 功能:

从终端接收一个字符

注意:

1.接收字符

2.只能接收一个字符

示例:

char ch = 0

ch = getchar();

3. printf

3.1 功能

打印格式化字符串

3.2 用法

3.2.1 printf打印非输出控制符

printf("hello world");

\n:换行符

\r:回车符(回到最左端)

\t:横向制表符

\v:纵向制表符

\b:退格符

\\:\字符

\":"字符

3.2.2 printf打印输出控制符

printf("num = %o\n", num);

%d 按照十进制打印 int

%o 按照八进制打印

%x 按照十六进制打印

%#o #代表打印八进制前的0

%#x #代表打印十六进制前的0x

%u 按照无符号类型打印 unsigned

%c 按字符打印 char

%s 按字符串打印 字符数组(字符指针)

%p 按指针打印 指针

%f 按float类型打印 float

%lf 按double类型打印 double

%ld 按long类型打印 long

%e 按指数形式打印 float/double

%E 按指数形式打印 float/double

%% 打印%号

3.2.3 printf打印多个输出控制符

int num1 = 100;

int num2 = 200;

printf("num1 = %d, num2 = %d\n", num1, num2);

注意:

1.输出控制符和变量个数需要一一对应

3.2.4 printf格式化输出用法

%nd

域宽:不足n位左边用空格补齐

%0nd

0:不足域宽,高位用0补齐

%-nd:

-:左对齐

%.mf

m:保存小数点后m位有效数字

4. scanf

4.1 功能

从终端接收格式化数据

4.2 注意

1.scanf从数据不匹配的位置开始,不再向后读取

2.scanf中严禁加入\n

3.scanf中除了%s都需要加入&运算符

4.scanf中除了%c可以接收' '和'\n'字符,其余均无法接收' '和'\n'字符

4.3 scanf接收非输入控制符

scanf("m");

用户将""中间的非输入控制符原封不动输入才算输入成功

注意:

scanf中尽量减少非输入控制符出现次数

4.4 scanf接收输入控制符

int num = 0;

scanf("%d", &num);

%d:按照int类型接收

%ld:按照long类型接收

%f:按照float类型接收

%lf:按照double类型接收

%s:按照字符串接收

%c:按照字符char类型接收

_%c:接收一个非' '和'\n'的字符

4.5 scanf接收多个输入控制符

scanf("%d", &num1);

scanf("%d", &num2);

scanf("%d %d", &num1, &num);

相关推荐
xy_recording18 分钟前
Day20 K8S学习
学习·容器·kubernetes
Lynnxiaowen19 分钟前
今天继续昨天的正则表达式进行学习
linux·运维·学习·正则表达式·云计算·bash
qq_1728055943 分钟前
Go 装饰器模式学习文档
学习·golang·装饰器模式
神里流~霜灭2 小时前
(C++)数据结构初阶(顺序表的实现)
linux·c语言·数据结构·c++·算法·顺序表·单链表
自强的小白2 小时前
vlan(局部虚拟网)
网络·学习
一只乔哇噻3 小时前
java后端工程师进修ing(研一版 || day41)
java·开发语言·学习·算法
知识分享小能手3 小时前
React学习教程,从入门到精通,React 使用属性(Props)创建组件语法知识点与案例详解(15)
前端·javascript·vue.js·学习·react.js·前端框架·vue
大筒木老辈子4 小时前
Linux笔记---协议定制与序列化/反序列化
网络·笔记
草莓熊Lotso4 小时前
【C++】递归与迭代:两种编程范式的对比与实践
c语言·开发语言·c++·经验分享·笔记·其他
我爱挣钱我也要早睡!7 小时前
Java 复习笔记
java·开发语言·笔记