1.2.3.1 输入输出语句、赋值语句、复合语句

  1. cin 语句

cin(character input),在 iostream 头文件中定义,可以控制来自标准输入流 stdin 的输入。

int a;
std::cin >> a;
  1. scanf 语句

scanf 是格式化输人函数,在 cstdio 头文件中定义,从 stdin 中读取数据。 scanf 的语法为:

scanf(格式字符串, 变量列表);

其返回值为成功赋值的参数的数量,可以为 0;若在赋值首个接收的参数前输入失败则为文件未尾(end of fle,EOF)。

scanf 函数的格式字符串由非空白多字节字符、空白符和转换说明符 % 三类符号组成。转换说明符由以下几类组成:

  1. %c,代表一个字符;
  2. %s,代表一个字符串,会读入一个到空白字符或者 EOF 为止的字符串;
  3. %d,代表一个十进制整数;
  4. %u,代表一个无符号十进制整数;
  5. %f,代表一个十进制的实数。
int a;
long long b;
char s[10];
scanf("%d %lld %s", &a, &b, &s);
  1. cout 语句

cout(character output),在 iostream 头文件中定义,可以控制来自标准输出流 stdout 的输出。可以用 fixedsetprecision() 来保留指定位数的浮点数。

#include <iostream>
#include <iomanip>  // 控制精度需要包含
using namespace std;

int main()
{
    double d = 1234.5678912;
    cout << 123 << "NOI" << endl;
    cout << d << endl;  // 默认保留6位有效数字,输出1234.56
    cout << setprecision(3) << d << endl;  // 保留3位有效数字,输出1.23e+03
    cout << setprecision(9) << d << endl;  // 保留9位有效数字,输出1234.56789
    cout << setiosflags(ios::fixed);  // 设置小数部分的精度
    cout << d << endl;  // 小数部分保留9位有效数字,输出1234.567891200
    cout << fixed << setprecision(3) << d << endl;  // 小数部分保留3位有效数字,输出1234.568
    return 0;
}
  1. printf 语句

printf 是格式化输出函数,在 cstdio 头文件中定义,可以输出到 stdout。

printf 的语法为:

printf(格式字符串, 表达式列表);

其格式字符串由普通多字节字符和转化说明符 % 构成。转换说明符类似 scanf 函数中的定义。

#include <iostream>
#include <cmath>

using namespace std;

int main()
{
    int a = 1;
    double pi = std::acos(-1.L);
    printf("a = %d, pi = %.9lf\n", a, pi); // 输出 a = 1, pi = 3.141592654
    return 0;
}
  1. 赋值语句

形如 a = b 的语句是基本赋值语句,作用是将 b 的值赋给 ab 可以是常量、变量或表达式。

  1. 复合语句

复合语句由一对大括号和中间的语句组成,在语法上等价于单条语句。