《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

本节书摘来自华章计算机《计算机系统:核心概念及软硬件实现(原书第4版)》一书中的第2章,第2.8节,作者:[美] J. 斯坦利·沃法德(J. Stanley Warford)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.8 问题

2.1节
9.写一个C++程序,输入两个整数,输出它们的商和余数。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

2.2 节
10.写一个C++程序,输入一个整数,输出这个整数是否是偶数。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

11.写一个C++程序,输入两个整数,输出这两个整数之间的整数之和。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

2.3节
12.写一个C++函数
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

返回长len宽wid的矩形的面积。用一个输入矩形的长和宽,输出矩形面积的主程序测试它。在主程序中而不是函数中输出该值。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

13.写一个C++函数
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

计算长len宽wid的矩形的面积ar和周长per。用一个输入矩形的长和宽,输出矩形面积和周长的主程序来测试它。在主程序中而不是函数中输出值。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

2.4节
14.写一个C++程序,请用户输入一个小的整数,然后用递归函数返回练习5中定义的斐波那契值。不要使用循环。在主程序而不是在函数中输出值。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

15.写一个C++程序打印汉诺塔问题的解决方案。要求用户输入游戏中盘子的数量,所有盘子初始是在哪根柱子上,要被移动到哪个柱子上。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

16.写一个名为rotateLeft,返回值为void的递归函数,它循环左移一个数组的前n个整数。为了循环左移n个元素,要递归地循环左移前n-1个元素,然后交换最后两个元素。例如,循环左移5个元素:
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

先递归地循环左移前4个元素:
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

然后交换后两个元素:
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

写一个主程序来测试它,输入一个整数的个数,然后是要循环移动的整数数值。输出是原整数值和循环移动后的值。rotateLeft中不要使用循环,在主程序而不是函数中输出值。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

17.写一个函数
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

递归地找出list[0]和list[n]之间最大的整数。假设数列中至少有一个元素。用主程序测试它,输入是整数数量,接着是整数数值。输出是原整数值,接着是最大整数值。maximum中不要使用循环。在主程序而不是函数中输出值。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

2.5 节
18.图2-40的程序生成了一个元素顺序与输入时相反的链表。修改程序的第一个循环,使生成的链表和输入顺序一致。不要改动第二个循环。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

19.二叉搜索树的结点声明如下:
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题

leftCh是指向左子树的指针,rightCh是指向右子树的指针。写一个C++程序,输入一个整数序列,-9999为标记符号,把它们插入二叉搜索树。写一个递归过程序遍历搜索树,以升序输出这些数值。
《计算机系统:核心概念及软硬件实现(原书第4版)》——2.8 问题