(1)
要輸出的是:
代碼:
#include <stdio.h>
int main( )
{
int i,j,n=6;
for(i=n;i>=1;--i) //一共要輸出n行
{
//輸出第i行
for(j=1; j<=2*i-1; ++j) //輸出2*i-1個星號
printf("*");
printf("\n");
}
return 0;
}
(2)
要輸出的是:
代碼:
#include <stdio.h>
int main( )
{
int i,j,n=6;
for(i=1;i<=n;++i) //一共要輸出n行
{
//輸出第i行
for(j=1; j<=n-i; ++j) //輸出n-i個空格
printf(" ");
for(j=1; j<=i; ++j) //輸出i個星號
printf("*");
printf("\n");
}
return 0;
}
(3)
要輸出的是:
代碼:
#include <stdio.h>
int main( )
{
int i,j,n=6;
for(i=n;i>=1;--i) //i由大變小
{
//輸出第i行
for(j=1; j<=n-i; ++j) //關鍵:輸出的是n-i個空格
printf(" ");
for(j=1; j<=2*i-1; ++j) //關鍵:輸出的是2*i-1個星號
printf("*");
printf("\n");
}
return 0;
}
(4)
要輸出的是:
代碼:
#include <stdio.h>
int main( )
{
int i,j,n=6;
for(i=1;i<=n;++i) //一共要輸出n行
{
//輸出第i行
for(j=1; j<=n-i; ++j) //輸出n-i個空格
printf(" ");
for(j=1; j<=2*i-1; ++j) //輸出2*i-1個星號
printf("*");
printf("\n");
}
return 0;
}
(5)
要輸出的是:
代碼:這一個稍微麻煩一些在於,第1行和最後一行單獨處理,而中間的n-2行則有規律:若干空格、1個星號、若干空格、1個星號
#include <stdio.h>
int main( )
{
int i,j,n=6;
//輸出第一行:n-1個空格和1個星號並換行
for(j=1; j<=n-1; ++j) //輸出n-i個空格
printf(" ");
printf("*\n");
//再輸出中間的n-2行
for(i=2;i<=n-1;++i) //一共要輸出n-2行
{
//輸出第i行
for(j=1; j<=n-i; ++j) //輸出n-i個空格
printf(" ");
printf("*");; //再輸出一個星號
for(j=1; j<=2*i-3; ++j) //而後輸出2*i-3個空格
printf(" ");
printf("*\n"); //輸出一個星號後本行結束,換行
}
//輸出最後一行:2*n-1個星號
for(j=1; j<=2*n-1; ++j)
printf("*");
printf("\n");
return 0;
}
(6)
要輸出的是:
參考代碼:
#include <stdio.h>
int main( )
{
int i,j,n=6; //n表明上三角行數
//先輸出上三角
for(i=1;i<=n;++i) //輸出n行
{
//輸出第i行
for(j=1; j<=n-i; ++j) //輸出n-i個空格
printf(" ");
for(j=1; j<=2*i-1; ++j) //輸出2*i-1個星號
printf("*");
printf("\n");
}
//下面輸出下三角
for(i=1;i<=n-1;++i) //輸出n-1行
{
//輸出第i行
for(j=1; j<=i; ++j) //輸出i個空格
printf(" ");
for(j=1; j<=2*(n-i)-1; ++j) //輸出2*i-1個星號
printf("*");
printf("\n");
}
return 0;
}