题意:
按照题意打印图形:
直接查看图形规律即可;
有图案的点距离(n,n)的距离不大于n-1
横纵坐标和为偶数的为'.'奇数为'*'
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
#define N 1005
int n;
char m[N][N];
int main(){
while(~scanf("%d",&n)){
int l = 2*n-1;
memset(m,' ',sizeof(m));
for(int i=1;i<=l;i++){
for(int j=1;j<=l;j++){
if(abs(i-n)+abs(j-n)<=n-1){
m[i][j]='.';
}
}
}
for(int i=1;i<=l;i++){
for(int j=1;j<=l;j++){
if(m[i][j]=='.'){
if((i+j)%2){
m[i][j]='*';
}
}
}
}
for(int i=1;i<=l;i++){
for(int j=l;j>=0;j--){
if(m[i][j]!=' '){
m[i][j+1]='\0';
break;
}
}
printf("%s\n",m[i]+1);
}
}
}