C++语言程序设计——11 C语言风格输入/输出函数

目录

一、输入函数

getchar()从标准输入读取一个字符,成功时返回读取的字符(ASCII码),失败时返回-1。

scanf() 进行格式化输入,可以读取各种数据类型(整数、浮点数、字符串等)。

例如,用 scanf 输入两个 char 类型变量,并输出:

cpp 复制代码
#include <iostream>
using namespace std;

int main() 
{
    char a, b;
    scanf("%c %c", &a, &b);
    printf("a是%c, b是%c", a, b);
    return 0;
}

二、输出函数

(一)占位符

printf 和 cout 都是用于输出,但在语法和使用方式上有很大区别,不过printf 函数格式化更灵活。

复制代码
cout << 数据1 << 数据2 << 数据3;             // cout - 流操作符
printf("格式字符串", 参数1, 参数2, 参数3);   // printf - 函数调用  

这里的格式字符串可以用占位符%来使用,可以理解成占位置,代表这个位置有一个数据类型占用了。

cpp 复制代码
#include <iostream>
using namespace std;

int main()
{
    printf("成绩为:%d分,等级:%c",100,'A'); 
    return 0;
}

常用的占位符如下:

如下代码:

cpp 复制代码
#include <iostream>
using namespace std;

int main() 
{
    int a = 10;
    char ch = 'A';
    char str[] = "Hello world!";
    printf("%d\n", a);
    printf("%c\n", ch);
    printf("%s\n", str);
    printf("%p\n", &a);        // 指针地址(变量底子)
    printf("%p\n", &str[2]);   // 指针地址(数组元素地址)
    return 0;
}

(二)精度控制

可以通过printf函数来进行精度控制,如下代码:

cpp 复制代码
#include <iostream>
using namespace std;

int main() 
{
    double value = 3.1415;
    char str[] = "Hello";
    
    printf("%.3f\n", value);      // 保留3位小数
    printf("%.3s\n", str);        // 字符串前3个字符:Hel
    printf("%6.2f\n", value);     // 宽度6,精度2: 3.14
    
    return 0;
}
相关推荐
liuyao_xianhui几秒前
优选算法_模拟_替换所有的‘?‘_C++
开发语言·javascript·数据结构·c++·算法·链表·动态规划
笨笨马甲几秒前
Qt 人脸识别
开发语言·qt
大志出奇迹13 分钟前
FreeRTOS中创建任务的顺序是否会影响任务运行的顺序?【面试重点】
c语言·rtos
Riemann~~13 分钟前
ros2写一个可以修改参数的node
开发语言·python·ros2·机器人系统
无巧不成书021814 分钟前
Java核心技术全景解析:从白皮书到实战踩坑
java·开发语言
Roy_Sashulin16 分钟前
基于AI的Java编程平台
java·开发语言·人工智能·sashulin·deepseek
周万宁.FoBJ20 分钟前
vue源码讲解之 reactive解析(仅proxy部分)
开发语言·javascript·ecmascript
旖-旎22 分钟前
二分查找(山脉数组的峰顶索引)(5)
c++·算法·leetcode·二分查找·力扣·双指针
阿贵---25 分钟前
单元测试在C++项目中的实践
开发语言·c++·算法
2401_8914821731 分钟前
C++中的事件驱动编程
开发语言·c++·算法