#include <iostream.h>
void rectangle(int heigth, int width);
void isosceles(int heigth);
void diamond(int heigth);
int main()
{
int heigth;
int width;
char c;
cout<<"please choose the shapes that you would like using,if you want to quit please enter Q(uit)"<<endl;
cout<<"(R/I/D)"<<endl;
cin>>c;
if(c == 'R' || c == 'r')
{
cin>>heigth>>width;
rectangle(heigth, width);
}
if(c=='I' || c=='i')
{
cin>>heigth;
isosceles(heigth);
}
if(c=='D' || c=='d')
{
cout<<"Please enter an odd number!"<<endl;
cin>>heigth;
if((heigth%2) != 0)
{
diamond(heigth);
}
else
{
cout<<"This is an IllegalAgrument!"<<endl;
}
}
return 0;
}
void rectangle(int heigth, int width)
{
int i = 0;
int j = 0;
char c = '*';
for(i=0; i<heigth; i++)
{
for(j=0; j<width; j++)
{
cout<<c;
}
cout<<endl;
}
}
void isosceles(int heigth)
{
int i;
int j = 0;
int k = 0;
int row = heigth;
int spacenum;
int starnum;
for(k=0; k<heigth; k++)
{
spacenum = row--;
if(k==0)
{
starnum = 1;
} else
{
starnum = k*2+1;
}
for(i=spacenum; i>0; i--)
{
cout<<" ";
}
for(j=1; j<=starnum; j++)
{
cout<<"*";
}
cout<<endl;
}
}
void diamond(int heigth)
{
int rownum = heigth;
int spacenum;
int starnum;
int i=0;
int j=1;
int k;
int a = rownum/2;
for(i=0; i<heigth; i++)
{
if(i<rownum/2)
{
spacenum = a--;
}
else
{
spacenum = a++;
}
//cout<<spacenum<<"sapcenum"<<endl;
starnum = rownum -spacenum*2;
//cout<<starnum<<"starnum"<<endl;
for(j=0; j<spacenum; j++)
{
cout<<" ";
}
for(k=0; k<starnum; k++)
{
cout<<"*";
}
cout<<endl;
}
}
分享到:
相关推荐
在编程世界中,C++是一种强大且广泛应用的...总之,这个基于C++的打印图案项目是学习基础编程和C++语法的宝贵资源。通过实践,初学者可以逐步掌握C++的核心特性,为进一步深入学习C++和其他高级编程概念奠定坚实基础。
这段代码中,外层循环负责打印每一行,内层循环则负责打印每一行中的星号。随着外层循环的进行,内层循环的次数会逐渐增加,从而形成一个等腰三角形。`std::endl`是一个操纵符,它不仅会打印换行符,还会刷新输出...
本文将详细探讨如何使用C++语言来实现输出三角的方法。 首先,我们需要了解C++的基本语法和控制流结构。在这个示例中,我们主要会用到两种循环结构:`for`循环。`for`循环是C++中最常用的循环之一,它由初始化、...
首先,要理解C++的基础,它是一种静态类型、编译式的通用编程语言,广泛应用在系统软件、应用程序、驱动程序开发等多个领域。C++支持面向对象编程,同时也具有底层编程的能力,因此非常适合创建图形用户界面和游戏...
这种问题在学习C++基础时常见,主要涉及控制台输出、循环结构以及条件判断等基础知识。 描述中提到的“编出一个空心的菱形,周围用'*'表示出来”,意味着程序需要打印出一个由星号(*)组成的菱形图案,且菱形中心是...
在 Java 中打印金字塔星形图案可以采用多种方法,包括嵌套循环和递归。这些练习有助于程序员掌握控制流程和递归等基础编程概念。通过调整循环条件和递归调用,还可以实现不同的视觉效果,如180度旋转的金字塔。
理解并实现这样的图案排列问题,有助于提升对C++基础语法和控制流程的理解。同时,这也是一个很好的起点,可以进一步探索更复杂的图形生成,如金字塔形、菱形或其他自定义图案。通过不断实践和改进,你将能够创建出...
在C++编程中,生成一个规定大小的等腰三角形是一项基础练习,它涉及到控制台输出和循环结构的运用。等腰三角形是由两条相等的边和一个底边组成的,这里我们通常指的是字符构成的图形。下面我们将详细讨论如何使用C++...
压缩包内的"源码07 打印“心”形"很可能是包含上述代码的源文件,你可以将其解压并用C++编译器编译运行,观察实际的输出效果。这将是一个有趣的实践,可以帮助你更好地理解C++控制流和输出操作。
在IT领域,特别是编程教学与实践,理解和...以上就是关于“用C打印菱形星号”的多种方法介绍,每种方法都有其特点和适用场景。通过学习这些不同的实现方式,我们不仅能加深对C语言的理解,还能提升解决实际问题的能力。
根据给定的信息,我们可以分析出该段代码是关于C++编程语言中绘制两种不同类型的简单三角形的方法。这里,我们将会详细地解析标题、描述、标签以及部分内容中的知识点。 ### C++简单三角形 #### 标题:C++简单...
本主题将深入探讨如何使用C++编程语言来实现“打印一个三角形”的功能。三角形通常由一系列对齐的星号(*)或其他字符构成,逐行递增或递减。我们将探讨两种常见的方法:一种是等腰三角形,另一种是直角三角形。 首先...
6. **函数星星**:这可能是一个根据用户输入打印星号图案的实例,例如星形金字塔,它涉及到参数传递、函数调用和条件判断。 7. **其他经典例子**:除了上述的案例,还可能包含更多如排序算法(冒泡、选择、插入等)...
根据提供的文件信息,我们可以从中提炼出与C++编程基础相关的几个关键知识点: ### C++基本语法结构 ...通过理解和实践这些代码示例,可以加深对C++基础知识的理解,并为进一步学习更复杂的编程技术打下坚实的基础。
根据给定文件的信息,我们可以提炼出与C++趣味编程相关的几个关键知识点,这些知识点主要集中在C++编程的基础应用以及特定的图形输出技巧上。以下是对这些知识点的详细解析: ### 知识点一:C++图形输出技术 #### ...
例如,打印一个宽度为n的对称星形矩形: ```cpp void printStarRectangle(int n) { for (int i = 0; i ; i++) { for (int j = 0; j (i - n / 2); j++) cout ; for (int k = 0; k * abs(i - n / 2); k++) cout ...
4. **三角形输出**:这通常指的是打印星号或其他字符以形成一个等腰或等边三角形,是控制流和字符串操作的基本练习。 5. **C++案例分析**:这部分可能包含各种C++编程问题的解决方案,涵盖基础语法、数据结构、算法...
外层循环控制树的高度,内层循环则分为两部分:先输出空格来定位星形的位置,然后输出星形。主函数`main`中,用户输入树的高度,程序调用`printTree`函数输出相应的圣诞树。 这个简单的例子展示了C++的基础语法和...
综上所述,这100个示例涵盖了C++编程语言的基础知识和进阶技巧,包括循环、条件语句、数学函数的使用、随机数生成等多个方面。通过实践这些示例,学习者可以更好地理解和掌握C++语言的核心概念,并能够在实际编程...
根据给定文件的信息,我们可以提炼出以下几个C++相关的知识点: ### 1. 条件判断与循环控制 在第一个题目中,“编程找出1...通过这些练习,初学者可以很好地掌握 C++ 编程的基础知识,并为进一步学习打下坚实的基础。