- C++
C++ 基础学习笔记:变量类型与输入输出格式化
- 2025-7-15 17:38:39 @
C++ 基础学习笔记:变量类型与输入输出格式化
这份教程将通过示例代码详细讲解 C++ 中的基础数据类型、变量定义和输入输出格式化。代码中包含详细注释,帮助初学者理解每个概念的使用方法。
1. 数据类型概述
C++ 中的数据类型分为基本类型和复合类型,本教程重点介绍以下基本数据类型:
- 整数类型:
int
、long long
- 浮点类型:
float
、double
- 字符类型:
char
- 布尔类型:
bool
2. 变量定义与初始化
变量是存储数据的容器,使用前必须先定义。以下是不同数据类型的定义和初始化示例:
#include <iostream>
using namespace std;
int main() {
// 整数类型
int age = 25; // int 范围: -21亿 ~ 21亿
long long population = 1400000000; // long long 范围更大
// 浮点类型
float piFloat = 3.14159f; // float 单精度,注意加后缀 f
double piDouble = 3.14159265358979; // double 双精度,精度更高
// 字符类型
char grade = 'A'; // 字符用单引号,存储单个字符
// 布尔类型
bool isStudent = true; // 布尔值只有 true 和 false
// 输出变量值
cout << "年龄: " << age << endl;
cout << "人口: " << population << endl;
cout << "float 类型的 π: " << piFloat << endl;
cout << "double 类型的 π: " << piDouble << endl;
cout << "成绩等级: " << grade << endl;
cout << "是否为学生: " << (isStudent ? "是" : "否") << endl;
return 0;
}
3. 输入输出基础
使用 cin
和 cout
进行标准输入输出,需包含 <iostream>
头文件。
#include <iostream>
using namespace std;
int main() {
int num;
double price;
char gender;
bool isMember;
// 输入示例
cout << "请输入一个整数: ";
cin >> num; // 从键盘读取整数
cout << "请输入价格: ";
cin >> price; // 读取浮点数
cout << "请输入性别 (M/F): ";
cin >> gender; // 读取字符
cout << "是否为会员 (1=是, 0=否): ";
cin >> isMember; // 读取布尔值
// 输出示例
cout << "\n输入结果:" << endl;
cout << "整数: " << num << endl;
cout << "价格: " << price << endl;
cout << "性别: " << gender << endl;
cout << "是否为会员: " << (isMember ? "是" : "否") << endl;
return 0;
}
4. 浮点数输出格式化
使用 <iomanip>
头文件中的 setprecision
和 fixed
控制输出精度:
#include <iostream>
#include <iomanip> // 必须包含此头文件用于格式化
using namespace std;
int main() {
double value = 3.14159265358979;
// 默认输出(根据值自动调整精度)
cout << "默认输出: " << value << endl;
// 固定小数点后2位
cout << "保留2位小数: " << fixed << setprecision(2) << value << endl;
// 保留3位小数
cout << "保留3位小数: " << setprecision(3) << value << endl;
// 保留1位小数
cout << "保留1位小数: " << setprecision(1) << value << endl;
// 注意:一旦使用 fixed,后续输出都会保持固定格式
// 若需恢复默认格式,可使用 resetiosflags(ios::fixed)
cout << "恢复默认: " << resetiosflags(ios::fixed) << value << endl;
return 0;
}
输出示例:
默认输出: 3.14159
保留2位小数: 3.14
保留3位小数: 3.142
保留1位小数: 3.1
恢复默认: 3.14159
5. 布尔类型详解
布尔类型只有两个值:true
(真)和 false
(假),常用于逻辑判断。
#include <iostream>
using namespace std;
int main() {
bool isRaining = true;
bool hasLicense = false;
// 布尔值直接输出为 1 (true) 或 0 (false)
cout << "是否下雨: " << isRaining << endl;
cout << "是否有驾照: " << hasLicense << endl;
// 更友好的输出方式
cout << "是否下雨: " << (isRaining ? "是" : "否") << endl;
cout << "是否有驾照: " << (hasLicense ? "是" : "否") << endl;
// 布尔值与整数的转换
// 0 表示 false,非零值表示 true
bool flag1 = 5; // 非零值 -> true
bool flag2 = 0; // 零 -> false
cout << "flag1: " << flag1 << endl; // 输出 1
cout << "flag2: " << flag2 << endl; // 输出 0
return 0;
}
6. 常量与变量
- 变量:值可以改变的存储单元。
- 常量:值不可变的存储单元,使用
const
关键字定义。
#include <iostream>
using namespace std;
int main() {
// 变量(值可以修改)
int score = 90;
score = 95; // 合法:修改变量值
// 常量(值不可修改)
const double PI = 3.14159;
// PI = 3.14; // 错误:不能修改常量值
cout << "分数: " << score << endl;
cout << "圆周率: " << PI << endl;
return 0;
}
7. 总结
- 数据类型:选择合适的数据类型存储不同类型的数据。
- 变量初始化:定义变量时尽量初始化,避免使用未初始化的值。
- 输入输出:使用
cin
和cout
进行基本的输入输出操作。 - 格式化:使用
setprecision
和fixed
控制浮点数的输出精度。 - 布尔类型:用于逻辑判断,值为
true
或false
。
通过这些示例,你可以掌握 C++ 中基本数据类型的使用方法和输入输出的格式化技巧。建议动手修改代码,观察不同的输出效果,加深理解。
1 条评论
-
admin SU @ 2025-7-15 17:39:10
#include <iostream> #include <iomanip> // for std::setprecision //iomanip是一个用于输入输出格式化的头文件,里面存放了很多格式化输出的函数和操纵符 using namespace std; int main() { double x; cout << "请输入一个数:"; cin >> x; //保留几位小数,保留n位小数,那么第n位小数后面的数字会被舍弃 //但是如果第n位小数后面的数字大于等于5,那么第n位小数会加1 //保留n位小数,那么第n+1位小数会四舍五入 cout << "您输入的数是:" << x << endl; cout << "保留两位小数:" << fixed << setprecision(2) << x << endl; cout << "保留三位小数:" << fixed << setprecision(3) << x << endl; cout << "保留1位小数:" << fixed << setprecision(1) << x << endl; return 0; }
#include <iostream> using namespace std; int main() { //int n; //创建一个整数变量n //cout << "请输入一个整数: "; //cin >> n; //从标准输入读取一个整数 //cout << "你输入的整数是: " << n << endl; //输出读取的整数 //int的整数范围是-2,147,483,648到2,147,483,647 //记住这个就可以了 int的-21亿多到21亿多的整数范围 //long long n;//双长整数类型long long //cout << "请输入一个整数: "; //cin >> n; //从标准输入读取一个整数 //cout << "你输入的整数是: " << n << endl; //输出读取的整数 //long long的整数范围是-9,223,372,036,854,775,808到9,223,372,036,854,775,807 //char n;//字符类型char ////字符用单引括起来的单个字符 ////创建一个字符变量n //cout << "请输入一个字符: "; //cin >> n; //从标准输入读取一个字符 //cout << "你输入的字符是: " << n << endl; //输出读取的字符 //创建变量的同时可以直接赋值,这种形式我们称为初始化 //char n = 'A'; //直接赋值一个字符 //cout << "你输入的字符是: " << n << endl; //输出读取的字符 //int m = 10; //整数类型int //cout << "你输入的整数是: " << m << endl; //输出读取的整数 // 默认情况下,C++会将整数视为int类型 //小数数据类型有float和double //float是单精度浮点数,double是双精度浮点数 //float的范围比较小,通常用于存储较小的数值 //double的范围更大,通常用于存储较大的数值 //在程序中,我们可以使用float和double来存储小数数据 //但是默认情况下,C++会将小数数据视为double类型 //double n = 3.14; //双精度浮点数 //cout << "你输入的小数是: " << n << endl; //输出读取的小数 //float m = 2.718; //单精度浮点数 //cout << "你输入的小数是: " << m << endl; //输出读取的小数 //常量是在程序中不会改变的值 3.14 2.718 'A' 10 //变量是在程序中可以改变的值 n m //常量的值在程序运行时不会改变 //bool flag;//布尔类型bool //布尔类型用于表示真或假 //在C++中,布尔类型的值可以是true或false //比如性别有男和女,男可以表示为true,女可以表示为false //true和false是布尔类型的两个值 //true表示真,false表示假 //整数中,0表示false,非0表示true //非0值有个值比较特殊,用1代表表示true //cout << "请输入一个值: "; //cin >> flag; //从标准输入读取一个值 //cout << "你输入的值是: " << flag << endl; //输出读取的值 bool flag = true; //布尔类型变量flag cout << "你输入的值是: " << flag << endl; //输出读取的值 //布尔类型的值可以是true或false bool isTrue = false; //布尔类型变量isTrue cout << "isTrue的值是: " << isTrue << endl; //输出布尔类型变量isTrue的值 return 0; }
- 1