#include//二维数组方式#include int main(){ char a[][13] = { { ' ', ' ', ' ', ' ', ' ', ' ', '*' }, { ' ', ' ', ' ', ' ', ' ', '*', '*','*'}, {' ',' ',' ',' ','*','*','*','*','*'} , { ' ', ' ', ' ', '*', '*', '*', '*', '*', '*', '*' }, { ' ', ' ', '*', '*', '*', '*', '*', '*', '*', '*', '*' }, { ' ', '*', '*', '*', '*', '*', '*', '*', '*', '*','*','*' }, { '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*','*','*' }}; int i, j; for (i = 0; i <7; i++) { for (j = 0; j<13; j++) printf("%c", a[i][j]); printf("\n"); } for (i = 6; i >= 0; i--) { for (j = 12; j >= 0; j--) printf("%c", a[i][j]); printf("\n"); } system("pause"); retu
此方法只能固定输出,且过于麻烦,用循环可同样输出
#include#include int main(){ int line = 0; scanf("%d", &line);//自定义图形大小(行数) int i; for (i = 0; i < line; i++)//上半部分图形输出 { int j; for (j = 0; j < line - 1 - i; j++) { printf("%c",' '); } for (j = 0; j < (i * 2) + 1; j++) { printf("%c",'*'); } printf("\n"); } for (i = line - 1; i >0; i--)//下半部分图形输出 { int j=0; for (j = 1; j <= line - i; j++) { printf(" "); } for (j = 0; j < (2 * i) - 1; j++) { printf("*"); } printf("\n"); } system("pause"); return 0;}