C++面向对象程序设计实战:谭浩强课后习题解答
版权申诉
164 浏览量
更新于2024-07-11
收藏 48KB PDF 举报
"c++面对对象程序设计课后答案(谭浩强).pdf"
这篇PDF文档包含的是C++面向对象程序设计课程的一些练习题及解答。以下是对这些代码的详细解释:
1. 这段代码展示了如何在C++中进行基本的字符串连接。`cout`用于输出文本,`<<`操作符用于连接字符串。每个`cout`语句都会在输出后添加一个空格,最后的`endl`用于换行。
```cpp
cout << "This" << "is" << "a" << "C++" << "program." << endl;
```
2. 这段代码演示了变量的声明、赋值和基本的算术运算。`a`和`b`被赋值为10和23,然后它们相加的结果存储在`c`中,最后输出结果。
```cpp
a = 10;
b = 23;
c = a + b;
cout << "a+b=" << c << endl;
```
3. 这个例子使用了一个函数`f`来找到三个整数中的最小值。`cin`读取用户输入的三个整数,`f`函数返回其中的最小值,然后将其输出。
```cpp
int f(int x, int y, int z) {
if (x < y) m = x;
else m = y;
if (z < m) m = z;
return (m);
}
```
4. 类似于第2个例子,这段代码计算两个输入整数的和并直接输出。这里与第2个例子的区别在于,和的计算是在输出语句中直接完成的。
```cpp
c = a + b;
cout << "a+b=" << a + b << endl;
```
5. 这段代码定义了一个名为`add`的函数,该函数接收两个整数参数并返回它们的和。然后在`main`函数中调用`add`,将结果存储在`c`中,并输出。
```cpp
int add(int x, int y) {
int c;
c = x + y;
return (c);
}
```
6. 最后一个例子定义了一个名为`sort`的函数,它接受三个整数参数,并在内部进行排序。这里实现的是简单的选择排序,将最小值放到最前面。然而,注意这个函数没有实际改变输入的变量,因为它使用了值传递,而不是引用传递。在`main`函数中,虽然调用了`sort`,但没有对输入变量的实际值进行处理,因此输出结果可能与预期不符。
```cpp
void sort(int x, int y, int z) {
int temp;
if (x > y) { temp = x; x = y; y = temp; }
// {}内3个语句的作用是将x和y的值互换)
if (z < x) cout << z << "<" ...
```
以上代码示例主要涵盖了C++的基本语法,包括变量声明、赋值、输入/输出、算术运算、条件语句(`if`)、函数定义与调用以及基本的排序概念。对于初学者来说,这些都是学习C++面向对象编程的基础。在实际的面向对象编程中,还会涉及到类、对象、封装、继承、多态等更高级的概念。
2013-06-20 上传
2021-12-10 上传
2021-09-30 上传
2019-01-16 上传
2012-01-10 上传
2021-11-28 上传
moneygaojia
- 粉丝: 0
- 资源: 4万+
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍