。。本人底子较差。。。好不容易看懂了这个函数。。。贴代码和注释上来,欢迎大家来指点指点。
#include <iostream>
const int Len = 66;
const int Divs = 6;
void subdivide(char ar[], int low, int high, int level);
int main()
{
char ruler[Len];
int i;
for(i = 1;i < Len-2; i++)
ruler[i] = ' '; // 初始化数组
ruler[Len - 1] = '\0';
int max = Len - 2;
int min = 0;
ruler[min] = ruler[max] = '|'; // 字符串的第一个和最后一个字符为 |
std::cout << ruler << std::endl; // 输出的第一行
for (i = 1; i <= Divs; i++)
{
subdivide(ruler,min,max,i);
std::cout << ruler << std::endl;
for (int j = 1; j < Len - 2; j++)
ruler[j] = ' '; //清空数组
}
return 0;
}
void subdivide(char ar[], int low, int high, int level)
{
// 当循环的第一次进来后,由于LEVEL是1,所以把中间的设为 | 就跳出,第二次进来后,由于LEVEL是2,所以,中间的设为 | 之后,再进入这个函数,把起始点到中间点之间的中间的元素设为 | ,然后跳出第一个的调用,跳入第二个递归,将后半部分的中间元素设为 | 。依次类推,得到完整的图。
if(level == 0)
return ;
int mid = (high + low) / 2;
ar[mid] = '|';
subdivide(ar, low ,mid ,level-1);
subdivide(ar, mid ,high , level-1);
}
分享到:
相关推荐
《C++ Primer Plus》是Stephen Prata撰写的一本广受欢迎的C++编程入门教程,它为初学者提供了全面且深入的C++语言学习指南。这本书涵盖了C++的基础知识,包括语法、控制结构、数据类型、类和对象、模板以及异常处理...
第七章介绍了函数的概念和使用,讲解了函数的定义、函数的调用、函数的返回值等,提供了相关的编程练习题和答案,帮助读者了解如何使用函数来编写模块化的程序。第八章继续深入讲解了函数的使用,包括函数的重载、...
《C++ Primer Plus 第五版》是一本深受程序员喜爱的C++学习书籍,它深入浅出地介绍了C++编程语言的基础知识和高级特性。这本书的编程练习是学习过程中的重要环节,通过解决这些练习,读者可以巩固理论知识,提高实际...
《C++ Primer Plus》是一本深受程序员喜爱的C++学习书籍,它涵盖了C++语言的基础到高级主题。这本书的课后练习题是检验和巩固学习成果的重要环节。这些练习题旨在帮助读者理解并掌握C++的关键概念和技术,包括基本...
7. 第七章函数:介绍函数的定义、调用,参数传递(按值、按引用、按指针),以及函数重载和递归。 8. 第八章标准IO库:介绍输入输出流,包括`iostream`库中的`cin`和`cout`,以及格式控制技巧。 9. 第九章顺序容器...
C++ primer plus学习笔记之三,分为一下几个部分: 函数参数:介绍了函数的生命规则以及定义 数组函数:数组作为变量时的使用方法 指针和const:灵活运用指针和const 函数和二维数组:二维数组作为变量时声明以及定义...
《C++ Primer Plus第五版编程题答案》是一个针对C++初学者和进阶者的重要参考资料,它涵盖了C++ Primer Plus这本书中的所有编程练习题的解答。C++ Primer Plus是C++语言学习的经典书籍之一,作者Stephen Prata通过...
第7章 函数 7.1 函数的定义 7.1.1 函数返回类型 7.1.2 函数形参表 7.2 参数传递 7.2.1 非引用形参 7.2.2 引用形参 7.2.3 vector和其他容器类型的形参 7.2.4 数组形参 7.2.5 传递给函数的数组的处理 7.2.6...
《C++ Primer Plus 第六版》是一本深受程序员喜爱的C++学习书籍,它深入浅出地介绍了C++语言的基础知识、核心概念以及高级特性。这本书的编程练习是提升技能和理解C++的关键部分,而这份"编程练习答案"正是学习者在...
《C++ Primer Plus》是一本深受C++初学者欢迎的入门教材,它的第五版提供了全面且深入的C++语言学习指南。这本书不仅讲解了C++的基础语法,还涵盖了面向对象编程、模板和STL(Standard Template Library)等高级主题...
《C Primer Plus 附录A 复习题答案》提供了对C语言基础知识的全面回顾和解答,是学习C语言过程中的重要参考资料。本附录涵盖了C语言的关键概念、语法和编程技巧,旨在帮助读者巩固对C语言的理解,提高编程能力。 在...
《C++ Primer Plus 第五版 习题答案》是一份针对C++初学者及进阶者的重要学习资源,它详细解答了《C++ Primer Plus》第五版中的所有习题,帮助读者巩固和深化对C++语言的理解。这本书的习题涵盖了从基本语法到高级...
《C++ Primer Plus 6th Answers》是一份针对C++初学者及进阶者的宝贵资源,它包含了第六版《C++ Primer Plus》一书中的所有习题解答。这本书由Stephen Prata撰写,是C++编程领域里广受欢迎的教材之一。通过这份答案...
《C++ Primer Plus》是一本深受程序员喜爱的C++学习指南,它涵盖了C++语言的基础到高级主题。这本书的习题答案是学习过程中极其宝贵的资源,可以帮助读者深入理解和巩固所学知识。 C++是一种强大的、面向对象的编程...
《C++ Primer Plus》是一本深受程序员喜爱的C++学习经典书籍,它的例题和课后习题对于理解和掌握C++语言至关重要。源代码是学习编程最直接的方式,通过实践来检验理论,深入理解每一种编程概念。这个压缩包包含了书...
3. **函数**:C++允许定义和调用函数,源代码中会有各种函数定义和调用的例子,包括参数传递、返回值和递归函数。 4. **类与对象**:C++的核心特性是面向对象编程,类是创建对象的蓝图,源代码中会展示如何定义类、...
《C++ Primer Plus》是C++编程领域里一本广受欢迎的教材,它的第四版更是深受读者喜爱。本书深入浅出地介绍了C++语言的基础知识、核心概念以及高级特性,不仅适合初学者入门,也为有经验的程序员提供了进一步提升的...
- 递归函数的概念虽然未直接展示,但在C++中非常重要,例如`ex2.3`中的`mice()`和`see()`函数被自己调用。 6. **常量与变量**: - `const int inch_per_feet=12;` 定义了一个常量,其值不能改变。 - 变量如`h`和...
《C++ Primer Plus 第五版 习题答案》是一份详尽且清晰的参考资料,针对C++编程初学者和进阶者提供了大量实践性的解答。这份答案集涵盖了书中的各个章节,旨在帮助读者深入理解C++语言的核心概念、语法结构以及编程...
《C++ Primer Plus 习题练习》是一份包含多个章节习题解答的资源,主要针对C++编程语言的学习者。这份资料涵盖了从基础到高级的C++知识点,旨在帮助读者巩固理论知识并提升实践能力。以下是对每个章节主题的详细解释...