Loading...
题目描述输入一个十进制整数n,输出对应的二进制整数。常用的转换方法为“除2取余,倒序排列”。将一个十进制数除以2,得到余数和商,将得到的商再除以2,依次类推,直到商等于0为止,倒取除得的余数,即为所求的二进制数。例如,把52换算成二进制数的计算过程如下图:52除以2得到的余数依次为0,0,1,0,1,1,倒序排列,得到52对应的二进制数110100。用递归的思想来描述上述计算过程是这样的:输...
题目描述输入n和n个整数,以与输入顺序相反的顺序输出这n个整数。要求不使用数组,而使用递归函数实现。递归函数实现过程如下:void inverse(int n) { if(n >1) { (1) 读入一个整数,存入num; (2) 将后面的n-1个数逆序输出: inverse(n-1); (3) 输出num; ...
题目描述如上图所示,由正整数1, 2, 3, ...组成了一棵无限大的二叉树。从某一个结点到根结点(编号是1 的结点)都有一条唯一的路径,比如从10 到根结点的路径是(10, 5, 2, 1),从4 到根结点的路径是(4, 2, 1),从该结点到根结点的路径上的所有结点称为该结点的祖先。现在的问题就是,给定x 和y,求x和y的最近共同祖先,比如,10和4最近共同祖先是2,10和5的最近共同祖...
题目描述输入一个正整数,输出该数的数根。数根可以通过把一个数的各个位上的数字加起来得到。如果得到的数是一位数,那么这个数就是数根。如果结果是两位数或者包括更多位的数字,那么再把这些数字加起来。如此进行下去,直到得到是一位数为止。比如,对于24来说,把2和4相加得到6,由于6是一位数,因此6是24的数根。再比如39,把3和9加起来得到12,由于12不是一位数,因此还得把1和2加起来,最后得到3...
题目描述从键盘输入一个整数n(1≤n≤9),打印出指定的数字图形。要求在程序中定义并调用如下函数:PrintSpace(m)用来输出m个空格;PrintDigit(m)来输出一行中的数字串"12...m...21"(该行中的最大数字是m)。函数原型如下: void PrintDigit(int m); void PrintSpace(int m);输入正整数n(1≤n≤9)。输出指定数字图...