#include int inputInt(){
int r;
printf("请输入菱形半径:");
scanf("%d",&r);
return r;
}
void diamond_1(int r){
printf("打印菱形边框\n");
int x,y;
for(y=0;y<=2*r;y++){
for(x=0;x<=2*r;x++){
if(y==x+r||y==x-r||y==-x+r||y==-x+3*r)//菱形边框
printf("*");
else printf(" ");
}
printf("\n");
}
printf("\n");
}
void diamond_2(int r){
printf("打印实心菱形\n");
int x,y;
for(y=0;y<=2*r;y++){
for(x=0;x<=2*r;x++){
if((y<=x+r)&&(y>=x-r)&&(y>=-x+r)&&(y<=-x+3*r))//实心菱形
printf("*");
else printf(" ");
}
printf("\n");
}
printf("\n");
}
void diamond_3(int r){
printf("打印空心菱形\n");
int x,y;
for(y=0;y<=2*r;y++){
for(x=0;x<=2*r;x++){
if((y>=x+r)||(y<=x-r)||(y<=-x+r)||(y>=-x+3*r))//空心菱形
printf("*");
else printf(" ");
}
printf("\n");
}
printf("\n");
}
int main(int argc,char* argv[])
{
printf("打印菱形命令提示:执行文件名 -a(边框)/-b(实心)/-c(空心)\n");
int d=inputInt();
if(argc != 2){
printf("命令有误,请输入命令选项!\n");
return 1;
}
if(strcmp(argv[1],"-a")==0) diamond_1(d);
else if(strcmp(argv[1],"-b")==0) diamond_2(d);
else if(strcmp(argv[1],"-c")==0) diamond_3(d);
else return 1;
} //请各位大虾指教!