C++ 用户输入与数据类型详解:建立基本计算器及变量类型

C++ 用户输入

你已经学习了 cout 用于输出(打印)值。现在我们将使用 cin 来获取用户输入。

cin 是一个预定义变量,它使用提取运算符(>>)从键盘读取数据。

在下面的示例中,用户可以输入一个数字,该数字存储在变量 x 中。然后我们打印 x 的值:

示例

cpp 复制代码
int x; 
cout << "Type a number: "; // 输入一个数字然后按回车键
cin >> x; // 从键盘获取用户输入
cout << "Your number is: " << x; // 显示输入值

需要注意的是:

  • cout 的发音是 "see-out"。用于输出,并使用插入运算符(<<
  • cin 的发音是 "see-in"。用于输入,并使用提取运算符(>>

创建一个简单的计算器

在这个示例中,用户必须输入两个数字。然后我们通过计算(相加)这两个数字来打印它们的和:

示例

cpp 复制代码
int x, y;
int sum;
cout << "Type a number: ";
cin >> x;
cout << "Type another number: ";
cin >> y;
sum = x + y;
cout << "Sum is: " << sum;

就是这样!你刚刚建立了一个基本的计算器

C++ 数据类型

C++ 中的变量必须是指定的数据类型:

示例

cpp 复制代码
int myNum = 5;               // 整数(整数)
float myFloatNum = 5.99;     // 浮点数
double myDoubleNum = 9.98;   // 浮点数
char myLetter = 'D';         // 字符
bool myBoolean = true;       // 布尔值
string myText = "Hello";     // 字符串

基本数据类型

数据类型指定了变量将存储的信息的大小和类型:

数据类型 大小 描述
boolean 1 字节 存储 true 或 false 值
char 1 字节 存储单个字符/字母/数字,或 ASCII 值
int 2 或 4 字节 存储整数,不带小数
float 4 字节 存储含有一个或多个小数点的分数。足以存储 6-7 位小数
double 8 字节 存储含有一个或多个小数点的分数。足以存储 15 位小数

C++ 数值数据类型

数值类型

当需要存储没有小数的整数时,使用 int,例如 351000,而当需要浮点数(带小数)时,则使用 floatdouble,例如 9.993.14515

int

cpp 复制代码
int myNum = 1000;
cout << myNum;

float

cpp 复制代码
float myNum = 5.75;
cout << myNum;

double

cpp 复制代码
double myNum = 19.99;
cout << myNum;

floatdouble

浮点数值的精度表示小数点后有多少位数字。float 的精度仅为六到七位小数,而 double 变量的精度约为 15 位数字。因此,在大多数计算中使用 double 更安全。

科学计数法

浮点数也可以是带有 "e" 表示的科学计数法:

示例

cpp 复制代码
float f1 = 35e3;
double d1 = 12E4;
cout << f1;
cout << d1;

C++ 布尔数据类型

布尔类型

布尔数据类型由 bool 关键字声明,只能取 truefalse 两个值。

当值返回时,true = 1false = 0

示例

cpp 复制代码
bool isCodingFun = true;
bool isFishTasty = false;
cout << isCodingFun;  // 输出 1(true)
cout << isFishTasty;  // 输出 0(false)

布尔值主要用于条件测试,在后续章节中你会学到更多关于它们的知识。

C++ 字符数据类型

字符类型

char 数据类型用于存储单个字符。字符必须用单引号括起来,如 'A''c'

示例

cpp 复制代码
char myGrade = 'B';
cout << myGrade;

或者,如果你熟悉 ASCII,你可以使用 ASCII 值来显示某些字符:

示例

cpp 复制代码
char a = 65, b = 66, c = 67;
cout << a;
cout << b;
cout << c;

提示:所有 ASCII 值的列表可以在我们的 ASCII 表参考中找到。

C++ 字符串数据类型

字符串类型

string 类型用于存储一系列字符(文本)。这不是一个内置类型,但在最基本的用法中,它的行为类似于一个。

字符串值必须用双引号括起来:

示例

cpp 复制代码
string greeting = "Hello";
cout << greeting;

要使用字符串,你必须在源代码中包含一个额外的头文件,即 <string> 库:

示例

cpp 复制代码
// 包含字符串库
#include <string>

// 创建一个字符串变量
string greeting = "Hello";

// 输出字符串值
cout << greeting;

你将在我们的 C++ 字符串章节中了解更多关于字符串的知识。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

相关推荐
yanlou23314 分钟前
KMP算法,next数组详解(c++)
开发语言·c++·kmp算法
小林熬夜学编程15 分钟前
【Linux系统编程】第四十一弹---线程深度解析:从地址空间到多线程实践
linux·c语言·开发语言·c++·算法
2401_8576226625 分钟前
SpringBoot健身房管理:敏捷与自动化
spring boot·后端·自动化
程序员阿龙27 分钟前
基于SpringBoot的医疗陪护系统设计与实现(源码+定制+开发)
java·spring boot·后端·医疗陪护管理平台·患者护理服务平台·医疗信息管理系统·患者陪护服务平台
阿洵Rain44 分钟前
【C++】哈希
数据结构·c++·算法·list·哈希算法
程思扬1 小时前
为什么Uptime+Kuma本地部署与远程使用是网站监控新选择?
linux·服务器·网络·经验分享·后端·网络协议·1024程序员节
Liknana1 小时前
C++ shared_ptr 动态内存
开发语言·c++
阿华的代码王国1 小时前
【Spring】——SpringBoot项目创建
java·spring boot·后端·启动类·target文件
Daking-1 小时前
「STL::array」标准库容器:array(数组)介绍(C++)
开发语言·c++
九鼎科技-Leo1 小时前
什么是 ASP.NET Core?与 ASP.NET MVC 有什么区别?
windows·后端·c#·asp.net·mvc·.net