菱形:
*
***
*****
***
*
#include<stdio.h>
int main()
{
int i, j, n=5, k;
scanf("%d", &n);//行数
k = n / 2;//对半处理
for (i = 0; i <= k; i++)//处理上半部分
{
for (j = 0; j < k - i; j++)
printf(" ");
for (j = 0; j <=2 * i; j++)
printf("*");
printf("\n");
}
for (i = 1; i < n - k; i++)//处理下半部分
{
for (j = 0; j < i; j++)
printf(" ");
for (j = 0; j < n - 2 * i; j++)
printf("*");
printf("\n");
}
return 0;
}
倒三角:
*********
*******
*****
***
*
#include<stdio.h>
int main()
{
int i, j, n, k;
scanf("%d", &n);//行数
for (i = 0; i < n; i++)
{
for (j = 1; j <= i; j++)
printf(" ");
for (j = 1; j <= 2 * (n-i) - 1; j++)
printf("*");
printf("\n");
}
return 0;
}
三角:
*
***
*****
*******
*********
#include<stdio.h>
int main()
{
int i, j, n;
scanf("%d", &n);//行数
for (i = 1; i <= n; i++)
{
for (j = 1; j <= n - i; j++)
printf(" ");
for (j = 1; j <= 2 * i - 1; j++)
printf("*");
printf("\n");
}
return 0;
}
令外提一嘴,如果需要其它图形,也是可以处理的,
char c;
c=getchar();
以三角举例:
(
5
(
(((
(((((
(((((((
(((((((((
#include<stdio.h>
int main()
{
int i, j, n;
char c;
c = getchar();
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
for (j = 1; j <= n - i; j++)
printf(" ");
for (j = 1; j <= 2 * i - 1; j++)
printf("%c",c);
printf("\n");
}
return 0;
}
这种打印图案的,最重要的是找规律,然后用循环实现就行了!
因此每个人有不同的想法,一定要想出自己的东西来,这样才算真正掌握!