教学内容
- 数据类型转换
- 隐式类型转换
- 强制类型转换
- ASCII码
- C++转义字符(在第7单元字符串中还会复习)
数据类型转换
知识与概念
自动或手动将数据从一种类型变成另一种类型。
- bool, char
- int, long long
- double
例题
int a = 5;
double b = 2.1;
cout << a + b; // 输出7.1隐式类型转换
知识与概念
不同类型混合时,编译器自动转换,如 int → double。
bool, char
int , long long
double
编译器自动完成。
例题
char c = 'A';
int n = c + 5; // c 转为int
cout << n; // 输出习题
- 字符 + 整数,输出整数结果。
- int + double,分别输出 int 和 double 结果。
- 输出char 0-128
for(char i=0;i< = 128;i++)
cout << i << " ";强制类型转换
知识与概念
手动指定转换,例如:
double x = 3.6;
cout << (int)x; //去尾,而不是四舍五入。 解释:
- (int)3.9 → 3(小数被直接去掉)
- (int)(-3.9) → -3(不是 -4,也不是四舍五入)
习题
- 输入小数,四舍五入输出。
int rounded = (int)round(3.5); // 结果是 4 - 输入int,输出对应字符。
ASCII码
知识与概念
ASCII 是字符与数字之间的映射标准。例如:
- ‘A’ = 65,‘a’ = 97
- ‘0’ = 48,‘9’ = 57

例题
char ch = 'A';
cout << (int)ch; // 输出65习题
- 输入一个字符,输出其ASCII码。
- 输入一个ASCII值,输出对应字符。
C++ 转义字符
常见转义字符表
cout <<“\n”;
| 转义序列 | 含义 |
|---|---|
\n | 换行 |
\t | 制表符 |
\" | 双引号 |
\\ | 反斜杠 |
\0 | 空字符 |
示例代码
cout << "Hello \n World!"; // 输出两行
char c='\t';
小练习
- 输出包含双引号的字符串:
"Hello" - 输出一个包含制表符的对齐表格。
题目讲解及练习
练习:
B3844
#include <bits/stdc++.h>
using namespace std;
/*
输入一个n
输出n行n列图案
第一行 A,第二行B,第27行还是A开头
开头字母 行号 (i-1)%26 [1,26] -->[0,25] 'A' + 0.
*/
int main()
{
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif
int n;
cin >> n;
for (int i = 1; i <= n; i++)
{
// char c = 'A' + (i - 1) / 26;
char c = 'A' + (i - 1) % 26;
for (int j = 1; j <= n; j++)
{
cout << c;
c++;
if (c > 'Z')
c = 'A';
}
cout << endl;
}
return 0;
}下一章
GESP2.3循环嵌套打印图形