ps:本贴为小白学习日记,基础到地下室,大神勿喷
所刷题目都是来源于网络,本人尝试给出自己的解答来加深对于选择和循环结构的理解。
01 输出一个99的*号方阵
#include <iostream>
using namespace std;
int main()
{
//输出一个9 9的*号方阵
for(int i=0;i<=8;i++)
{
for(int j=0;j<=8;j++)
{
cout<<"*";
}
cout<<"\n";
}
return 0;
}
02 星号输出
#include <iostream>
using namespace std;
int main()
{
/* *
**
***
***
***
*** */
for(int i=0;i<=5;i++)
{
for(int j=0;j<=2;j++)
{
if(i>=j)
{
cout<<"*";
}
}
cout<<endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
/* ***
**
*
*/
for(int i=0;i<=5;i++)
{
for(int j=0;j<=2;j++)
{
if(i<=j)
{
cout<<"*";
}
}
cout<<endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
/*输出***
**
* */
for(int i=0;i<=2;i++)
{
for(int j=0;j<=2;j++)
{
if(i<=j)
{
cout<<"*";
}
else
{
cout<<" ";
}
}
cout<<endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
//用*输出一个等腰三角形
/*
*
***
*****
*******
*********
*/
for(int i=1;i<=5;i++)
{
for(int j=1;j<=9;j++)
{
if(i+j<6||j-i>4)
{
cout<<" ";
}
else
{
cout<<"*";
}
}
cout<<endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
//输出一个倒三角形
/*
*******
*****
***
*
*/
for(int i=1;i<=4;i++)
{
for(int j=1;j<=7;j++)
{
if( i>j||i+j>8)
{
cout<<" ";
}
else
{
cout<<"*";
}
}
cout<<"\n";
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
/*
*
***
*****
*******
*********
*******
*****
***
*
*/
for(int i=-4;i<=4;i++)
{
for(int j=-4;j<=4;j++)
{
if(i+j<-4||j-i>4||i-j>4||i+j>4)
{
cout<<"o";//将0改成空格就行了
}
else
{
cout<<"*";
}
}
cout<<endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
//打印九九乘法表
/*
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
*/
for(int i=1;i<=9;i++)
{
for(int j=1;j<=9;j++)
{
if(i>=j)
{
cout<<i<<"*"<<j<<"="<<i*j<<"\t";//加入水平制表符让格式更加工整
}
}
cout<<endl;
}
return 0;
}
难点突破:给定数字输出金字塔
#include <iostream>
using namespace std;
int main()
{
/*
样例输入 5
样例输出
*
***
*****
*******
*********
*/
//由题意可知,在收到数字n后生成n行2n-1列
int n=0;
cin>>n;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=2*n-1;j++)
{
if(i+j<=n||j-i>n-1)
{
cout<<"o";//o换成空格就行了
}
else
{
cout<<"*";
}
}
cout<<endl;
}
return 0;
}