【问题】
要求根据输入的最多行的*数,打印由*形成的K字点阵。
例如:输入4,则打印如下的K型图案。
****
***
**
*
**
***
****
【代码1】
#include#include int main () { int i,j,n; scanf("%d",&n); for(i=1;i<=2*n-1;i++)//观察图案,发现外层循环一共有2*n-1行 { for(j=abs(n-i)+1;j>0;j--)//内层循环,每行“*”数量 { printf("*"); } printf("n"); } return 0; }
【代码2】
#includeint main () { int i,j,n; scanf("%d",&n); for(i=n;i>1;i--)//第一个循环,外循环:前(n-1)行 { for(j=i;j>0;j--)//内循环:第j行有j个“*” { printf("*"); } printf("n"); } for(i=1;i<=n;i++)//第二个循环,外循环:n--2*n-1行 { for(j=i;j>0;j--)//内循环:第j行有j个“*” { printf("*"); } printf("n"); } return 0; }
【运行结果】
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)