您的位置:首页 > 其它

打印空心三角形

2010-11-15 15:01 225 查看
这是一个算法问题,偶然有人问我的,查了查资料,拿来这里与大家分享一下。

java语言

import java.util.*;

public class play {

public static void main(String[] args){

//打印空心三角形

int i,j,n=0;

System.out.print(" 输入n的值:"); //三角形行数

Scanner input= new Scanner(System.in);

n = input.nextInt();

for(i=1;i<n;i++) //控制行数

{

for(j=1;j<=i-1+n;j++) //空格数

if(j==n-i+1||j==n+i-1)

System.out.print("*");

else {

System.out.print(" ");

}

System.out.print("/n");

}

for(i=1;i<=2*n-1;i++) {

System.out.print("*");

}

}

}

C语言打印空心三角形

#include<stdio.h>
int main()
{
int i,j,n;
scanf("%d",&n);
for(i=1;i<n;i++) {
for(j=1;j<=i-1+n;j++)
if(j==n-i+1||j==n+i-1)
printf("*");
else printf(" ");
printf("/n");}

for(i=1;i<=2*n-1;i++)
printf("*");
}


C语言打印倒置空心三角形

#include <stdio.h>

void main()

{

int h,i,j;

do

{

printf("input the triangle's height h:/n");

scanf("%d",&h);

if(h<0)

{

printf("input height error!/ninput again:/n");

scanf("%d",&h);

}

}while(h<0);

for(i=0;i<h;i++)

{

if(i==0)

{

for(j=0;j<2*h-1;j++)

printf("*");

printf("/n");

}

else

{

for(j=0;j<2*h-1-i;j++)

if(j<i)

printf(" ");

else if(j==i)

printf("*");

else if(j>i&&j<2*h-2-i)

printf(" ");

else if(j==2*h-2-i)

printf("*");

printf("/n");

}

}

getch();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: