- C++
printf / scanf 格式化输入输出
- @ 2026-2-2 14:22:59
🌟 printf / scanf 格式化输入输出
🎯(%d / %f / 保留小数 / 宽度控制 / 输入输出格式)
⭐ 一、为什么要学 printf ?
虽然我们常用:
cout / cin
但是在考试、竞赛、洛谷中:
⭐ printf 更常用!
因为:
✅ 输出格式更精确
✅ 能控制小数位
✅ 能控制宽度
✅ 写法更简洁
⭐ 二、printf 基本用法
⭐ 语法
printf("格式", 变量);
⭐ 示例
int a = 5;
printf("%d", a);
输出:
5
🌟 三、常用格式符大全(🔥 必背表格)
| 格式符 | 类型 | 示例 |
|---|---|---|
| %d | int 整数 | 10 |
| %f | double 小数 | 3.14 |
| %c | 字符 | A |
| %s | 字符串 | hello |
| %lf | double输入用 | scanf专用 |
| %% | 输出% | % |
⭐ 四、整数输出(%d)
示例
int a = 100;
printf("%d", a);
多变量
printf("%d %d", a, b);
⭐ 五、小数输出(%f)⭐⭐⭐重点
默认6位小数
double x = 3.14;
printf("%f", x);
输出:
3.140000
⭐ 六、保留小数方法(超级重点🔥)
⭐ 保留2位小数
printf("%.2f", x);
⭐ 保留3位小数
printf("%.3f", x);
⭐ 通用模板(必须背)
%.nf
👉 n 表示小数位数
🎯 例题
double pi = 3.1415926;
printf("%.2f", pi); // 3.14
printf("%.4f", pi); // 3.1416
⭐ 七、宽度控制(对齐输出)
⭐ 占5格宽度
printf("%5d", a);
不足补空格:
10
⭐ 前面补0
printf("%05d", a);
输出:
00010
⭐ 小数宽度
printf("%8.2f", x);
表示:
总宽度8,小数2位
⭐ 八、字符输出(%c)
char c = 'A';
printf("%c", c);
⭐ 九、字符串输出(%s)
string s = "hello";
printf("%s", s.c_str());
⚠ 注意:
string 必须加:
.c_str()
🌟 十、scanf 输入(一级常考)
⭐ 整数输入
int a;
scanf("%d", &a);
⭐ 小数输入
double x;
scanf("%lf", &x);
⭐ 多变量输入
scanf("%d%d", &a, &b);
⚠ 注意
必须加 & 取地址符!!!
🌟 十一、printf vs cout 对比(考试常问)
| 功能 | cout | printf |
|---|---|---|
| 简单输出 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| 格式控制 | ⭐⭐ | ⭐⭐⭐⭐⭐ |
| 保留小数 | setprecision | %.2f(更简单) |
| 竞赛常用 | 一般 | ⭐⭐⭐⭐⭐ |
🎯 建议:
👉 日常练习:cout
👉 考试/竞赛:printf
🌟 十二、一级常用模板速记(直接背)
⭐ 输出整数
printf("%d", a);
⭐ 保留2位小数
printf("%.2f", x);
⭐ 输出字符
printf("%c", c);
⭐ 输出字符串
printf("%s", s.c_str());
⭐ 输入整数
scanf("%d", &a);
⭐ 输入小数
scanf("%lf", &x);
🎯 记忆口诀
整数 %d
小数 %f
字符 %c
字符串 %s
保留小数 %.2f
输入记得加 &
1 条评论
-
luohan LV 7 @ 2026-2-2 22:20:47金咕咕语法与
- 1