KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的带空格直角三角形图案。
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的带空格直角三角形图案。
多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表示输出行数。
针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。
5
*
* *
* * *
* * * *
* * * * *4
*
* *
* * *
* * * *#include <iostream>
#include<vector>
#include<cstring>
using namespace std;
int main() {
char a[20][20];
memset(a, ' ', sizeof(a));
int n;
cin>>n;
int k;
k=0;
// 从第n行开始赋值
for(int i=n-1;i>=0;i--){
//从第一列开始赋值
for(int j=k;j<n;j++){
a[i][j]='*';
}
k++;
}
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
printf("%c ",a[i][j]);
}
printf("\n");
}
} 哪位大神帮忙看看,我为什么只通过了2/3的测试
# include<bits/stdc++.h>
using namespace std;
void printRightTriangle(int num)
{
for(int i=0; i < num; i++)
{
for(int j=0; j<num;j++)
{
if(j <num-i-1)
cout << " ";
else
cout << "* ";
}
cout << endl;
}
}
int main()
{
int num;
while(cin>>num)
printRightTriangle(num);
return 0;
}