C++图形打印题
来源:互联网 发布:c语言入门 编辑:程序博客网 时间:2024/06/05 16:07
关键:写代码之前弄清楚这几个问题
1.有几行
2.每一行由哪几种元素组成
3.每一行的元素与行数有无关系
1. 星星题
#include <iostream>using namespace std;int main(){ for(int j=1;j<6;j++)//j控制行数 { //每一行由空格和星星组成,空格的个数k与行数j有关系 for(int k=1;k<j;k++)//k控制每一行的空格数 cout<<" "; for(int i=1;i<6;i++)//I控制每一行的星星*数 cout<<"*"<<" "; cout<<endl; }}
2. 对称图形
#include <iostream>#include <cmath>using namespace std;int main(){ for(int j=1;j<8;j++)//j控制行数 { int ub; ub=5-abs(j-4);//ub为每一行星星数目的个数 for(int i=1;i<ub;i++)//I控制每一行的星星*数 cout<<"*"<<" "; cout<<endl; }}
对称图形的扩展:每行的星星数为奇数个
#include <iostream>#include <cmath>using namespace std;int main(){ for(int j=1;j<8;j++)//j控制行数 { int ub; ub=2*(5-abs(j-4))-2;//ub为每一行星星数目的个数 for(int i=1;i<ub;i++)//I控制每一行的星星*数 cout<<"*"<<" "; cout<<endl; }}
3. 杨辉三角形
#include <iostream>using namespace std;int main(){ //step1: 生成数组,储存每一值(这里不能采用计算一个,打印一个的方法,因为计算该行元素值的时候,要用到上一行元素的值,这就要求我们必须至少保存上一行元素的值,因此想到用2维数组将这些值全部保存起来,然后再统一输出) //通项的前两行单独写,因为只有写出前两行,才能写出通项 int b[11][11]; b[1][1]=1; b[2][1]=1; b[2][2]=1; //通项 for(int i=3;i<11;i++) { b[i][1]=1; b[i][i]=1;//每一行的首元素和末元素都等于1 for(int j=2;j<i;j++) b[i][j]=b[i-1][j-1]+b[i-1][j];//核心代码:通项:即第I行第j个元素与第i-1行第j、j-1个元素之间的关系 } //step2:输出所有的元素 for(int m=1;m<11;m++) { for(int n=1;n<=m;n++) cout<<b[m][n]<<" "; cout<<endl;//每行结束以后换行 }}
阅读全文
0 0
- C打印图形
- 打印图形c
- C语言打印图形
- C语言 打印图形
- c语言图形打印 12345
- C慕课打印图形
- C++图形打印题
- C语言:循环练习题 打印图形
- C语言:打印图形 数字直角三角形
- C语言:打印图形练习测试
- c语言实现--------简单打印图形
- C语言空心菱形 *号打印图形
- c语言之打印输出图形
- C语言中的简单图形打印
- C语言实验——打印图形
- C语言实验——打印图形
- C语言中用循环打印各种图形
- 打印图形
- 创建本地svn进行代码版本控制
- 04_快速排序
- 什么是redis?
- sift
- 用js实现全国省市区联动
- C++图形打印题
- [设计模式]解释器模式(Interpreter)
- BSOI_2259.跳舞 (dance.pas/c/cpp)
- SQL 增加列、修改列、删除列
- C++之函数参数默认值
- Html5斜45度地图+3D模型ARPG系列教程(2)-- 相机更随及平滑
- PAT排名汇总
- jetty和tomcat的区别和关系
- 安装YII框架