c语言打印空心菱形
发布时间: 2023-02-21 11:53:27
A. c语言输出空心菱形的代码
#include<stdio.h>
voidLozenge0(intn,charch){//空心菱形
inti,j;
for(i=0;i<n;++i){//上半部分
for(j=0;j<=n-i;++j)printf("");//输出每行前导空格
printf("%c",ch);
for(j=0;j<2*i-1;++j)printf("");//菱形内部空格
if(i)printf("%c",ch);
printf(" ");
}
for(i=n-2;i>=0;--i){//下半部分
for(j=0;j<=n-i;++j)printf("");//输出每行前导空格
printf("%c",ch);
for(j=0;j<2*i-1;++j)printf("");//菱形内部空格
if(i)printf("%c",ch);
printf(" ");
}
}
intdiffabs(inta,intb){//返回a,b差值的绝对值,即|a-b|
return(a>b)?(a-b):(b-a);
}
voidLozenge(unsignedintn,charc){
unsignedinti,j,m;
for(i=0;i<n;i++){
m=diffabs(n/2,i);
for(j=0;j<=m;j++)printf("");//输出每行前导空格
for(j=0;j<(n+1)/2-m;j++)printf("%c",c);
printf(" ");
}
}
intmain(){
intn=10;
charch='*';
Lozenge0(n,ch);
Lozenge(n,ch);
return0;
}
热点内容