### C++编程实例知识点概述 #### 实例一:生成互不相同的无重复数字的三位数 **背景介绍:** 此实例旨在通过简单的嵌套循环结构,实现对指定数字集(本例为1、2、3、4)进行排列组合,以生成所有可能的互不相同的无重复数字的三位数。 **程序分析:** - **循环结构**:采用三层嵌套循环(`for`循环),分别代表三位数的百位、十位和个位。 - **条件判断**:使用`if`语句确保三位数字互不相同。 **程序逻辑详解:** 1. **初始化变量**:定义三个整型变量`i`、`j`、`k`,用于表示三位数的百位、十位和个位。 2. **嵌套循环**:设置三层`for`循环,每层循环的范围均为1至4(包括两端),分别对应三位数的不同位。 3. **条件判断**:在最内层循环中,使用`if`语句检查`i`、`j`、`k`是否互不相同,若满足条件,则执行输出操作。 4. **输出结果**:使用`printf`函数输出满足条件的三位数。 **代码示例:** ```cpp #include <iostream> using namespace std; int main() { for(int i = 1; i < 5; i++) { // 百位 for(int j = 1; j < 5; j++) { // 十位 for(int k = 1; k < 5; k++) { // 个位 if(i != j && i != k && j != k) { // 确保i、j、k三位互不相同 cout << i << j << k << endl; // 输出结果 } } } } return 0; } ``` #### 实例二:根据企业利润计算奖金 **背景介绍:** 该实例模拟了企业根据不同利润水平计算员工奖金的过程。奖金比例随利润增加而递减,直至最低1%。 **程序分析:** - **输入数据**:用户输入企业当月利润。 - **条件判断**:根据不同的利润区间,计算相应的奖金比例。 - **输出结果**:显示应发放的奖金总额。 **程序逻辑详解:** 1. **定义变量**:定义`long int i`用于存储输入的利润值,`int bonus`用于计算奖金总额。 2. **输入数据**:使用`scanf`函数获取用户输入的利润值。 3. **条件判断**:通过多个`if-else`语句块,根据不同的利润区间计算奖金。 4. **输出结果**:使用`printf`函数输出最终的奖金总额。 **代码示例:** ```cpp #include <iostream> using namespace std; int main() { long int i; int bonus1 = 100000 * 0.1; int bonus2 = bonus1 + 100000 * 0.75; int bonus4 = bonus2 + 200000 * 0.5; int bonus6 = bonus4 + 200000 * 0.3; int bonus10 = bonus6 + 400000 * 0.15; cout << "请输入当月利润: "; cin >> i; if(i <= 100000) { bonus = i * 0.1; } else if (i <= 200000) { bonus = bonus1 + (i - 100000) * 0.075; } else if (i <= 400000) { bonus = bonus2 + (i - 200000) * 0.05; } else if (i <= 600000) { bonus = bonus4 + (i - 400000) * 0.03; } else if (i <= 1000000) { bonus = bonus6 + (i - 600000) * 0.015; } else { bonus = bonus10 + (i - 1000000) * 0.01; } cout << "应发放奖金总额为: " << bonus << endl; return 0; } ``` #### 实例三:寻找特定整数 **背景介绍:** 本实例的任务是找到一个整数,该整数加上100后是一个完全平方数,再加上168后仍然是一个完全平方数。 **程序分析:** - **遍历搜索**:在10万以内的整数范围内遍历搜索符合条件的整数。 - **数学运算**:使用`sqrt`函数计算每个候选数加上100和268后的平方根,并验证其是否为整数。 **程序逻辑详解:** 1. **定义变量**:定义`long int i`用于遍历候选数,`long int x, y`用于存储两个平方根。 2. **遍历搜索**:使用`for`循环遍历1至100000之间的整数。 3. **条件判断**:使用`if`语句检查`x`和`y`是否为整数,即它们的平方是否等于对应的加法结果。 4. **输出结果**:如果找到符合条件的整数,则输出该数。 **代码示例:** ```cpp #include <iostream> #include <cmath> using namespace std; int main() { for(long int i = 1; i < 100000; i++) { long int x = sqrt(i + 100); long int y = sqrt(i + 268); if(x * x == i + 100 && y * y == i + 268) { cout << "符合条件的整数为: " << i << endl; } } return 0; } ``` 以上三个实例覆盖了基本的循环结构、条件判断、数学运算以及简单的输入输出操作,对于初学者来说是非常好的实践练习。
剩余61页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助