Asterisk printing2
• Write a program that outputs a triangle with a '*' character
Input the Height repeatedly using the While statement • Output a '*' character using the For statement
先让用户输入行数,获取这个输入的变量,将他赋值给for循环的i,然后for循环输出星花
int height;
while( true )
{
printf("Height: ");
if( 1 == scanf("%d",&height) )
{
for( int i = height;i > 0;--i)
{
for(int j = 0; j <= i-1;++j)
printf("*");
printf("\n");
}
printf(">>>=====================RESTART=====================\n");
}
else
fflush(stdin);
}
#include <stdio.h>
#include <stdlib.h>
/* print rectangular triangle */
int print_rec_triangle( int iHeight );
int print_rec_triangle_r( int iHeight );
/* print equicrural triangle */
int print_equ_triangle( int iHeight );
int print_equ_triangle_r( int iHeight );
int
main( void )
{
int iHeight = 0;
do
{
printf( "please input the triangle height you want: " );
scanf( "%d", &iHeight );
if( iHeight > 0 )
{
printf( "\nrectangular triangle:\n" );
print_rec_triangle( iHeight );
printf( "\nrectangular triangle reverse:\n" );
print_rec_triangle_r( iHeight );
printf( "\nequicrural triangle:\n" );
print_equ_triangle( iHeight );
printf( "\nequicrural triangle reverse:\n" );
print_equ_triangle_r( iHeight );
}
putchar( '\n' );
}while( iHeight > 0 );
return 0;
}
static int
print_blank( int iBlank )
{
int i = 0;
for( i = 0; i < iBlank; i++ )
{
putchar( ' ' );
}
return 0;
}
int
print_rec_triangle_r( int iHeight )
{
int i = 0;
int j = 0;
for( i = iHeight; i > 0; i-- )
{
for( j = 1; j <= i; j++ )
{
putchar( '*' );
}
putchar( '\n' );
}
return 0;
}
int
print_rec_triangle( int iHeight )
{
int i = 0;
int j = 0;
for( i = 0; i < iHeight; i++ )
{
for( j = 0; j <= i; j++ )
{
putchar( '*' );
}
putchar( '\n' );
}
return 0;
}
int
print_equ_triangle( int iHeight )
{
int iBlank = iHeight - 1;
int i = 0;
int j = 0;
for( i = 1; i <= iHeight; i++ )
{
print_blank( iBlank );
for( j = 1; j <= 2 * i - 1; j++ )
{
putchar( '*' );
}
putchar( '\n' );
iBlank--;
}
return 0;
}
int
print_equ_triangle_r( int iHeight )
{
int iBlank = 0;
int i = 0;
int j = 0;
for( i = iHeight; i >= 1; i-- )
{
print_blank( iBlank );
for( j = 1; j <= 2 * i - 1; j++ )
{
putchar( '*' );
}
putchar( '\n' );
iBlank++;
}
return 0;
}
你把楼上的稍微改改,不就行了么
#include
void main()
{
int i,j,height;
printf("please enter height:");
scanf("%d",&height);
printf("Height:%d\n",height);
for(i=0;i {
for(j=height-i;j>0;j--)
{
printf("*");
}
printf("\n");
}
}
#include
void main()
部分为:
#include <stdio.h>
void main()
#include<stdio.h>
void main(){
int h = 0;
int i = 0;
int j = 0;
scanf("%d",&h);
//打印h行
for(i = 0; i < h ; i ++){
//每行打印h - i个*
for(j = 0; j < h - 1 ; j ++ ){
printf("*");
}
printf("\n");
}
}