C++面向对象程序设计实战:谭浩强课后习题解答

版权申诉
0 下载量 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++面向对象编程的基础。在实际的面向对象编程中,还会涉及到类、对象、封装、继承、多态等更高级的概念。