我只会打印 "椭圆" 和 "傻眼猫咪"(因为手机荧幕太小,"咪" 字没有打到):#include <stdio.h>
int main(){
printf("\
***\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
** **\n\
***\n\n\
");
// 傻眼貓咪
printf("\n\
* * **** ***** * * *\n\
******** ** * * * *****\n\
* * * * * ** * * * * ** *\n\
* *** **** ***** * *\n\
** * * * * ** * * * *****\n\
* ******* ** * * ** ** * *\n\
** * **** ***** * * * * *\n\
* * * * ** * * * ** ** *****\n\
****** ** * ** * * * * *\n\
* * ** **** *** *** * * *\n\
* ** ** *** * *****\n\
* ****** * ** *** *\n\
");
return 0;
} “*****”
“*”
“*”
“*”
“*****” zhengyihao1 发表于 2022-3-14 11:51
讲解一下呗
圆 先用这个循环打印这个图形#include<stdio.h>
int main()
{
int i,j;//循环变量
for(i=0;i<17;i++)//外层循环控制行
{
for(j=0;j<7;j++)
{
printf("*");//内层循环控制列打印*
}
printf("\n");//打印行
}
}
*******
*******
*******
*******
*******
*******
*******
*******
*******
*******
*******
*******
*******
*******
*******
*******
*******
也可以考虑分为三个图形比较简单一点 因为时间关系,我数学不好,你先看看我以前做的0的图形,希望对你有帮助
/*整个图形0我把他分成了三部分
第一部分为上三角形
第二部分为矩形
第三部分为倒下角,也就是下面的下三角*/
#include<stdio.h>
void ssj();//上三角
void zj();//中间
void xsj();//下三角
int main()
{
ssj();//上三角
zj();//中间
xsj();//下三角
return 0;
}
void ssj()//上三角
{
int i,j;
for(i=0;i<2;i++)//外层循环控制行
{
for(j=0;j<=i*(-1)+1;j++)//j<=i*(-1)+1这个是要计算出来考虑的,就是打印左边的空格
{
printf(" ");//打印空格
}
for(j=0;j<=i+i+2;j++)//这个是打印*和挖空
{
if(i==0||i==2||j==0||j==i+i+2)//满足条件为图形的边
{
printf("*");
}
else{ //否则打印空格,也就是挖空
printf(" ");
}
}
printf("\n");//外层循环的行
}
}
void zj()//中间部分
{
int k,l;
for(k=0;k<7;k++)
{
for(l=0;l<7;l++)
{
if(k==7||l==0||l==6)
{
printf("*");
}
else{
printf(" ");
}
}
printf("\n");
}
}
void xsj()
{
int z,x;
for(z=0;z<2;z++)
{
for(x=0;x<=z;x++)
{
printf(" ");
}
for(x=0;x<=z*(-2)+4;x++)
{
if(z==1||x==0||x==z*(-2)+4)
{
printf("*");
}
else{
printf(" ");
}
}
printf("\n");
}
} C语言带你学C带你飞,第一个就见过,直接空格完了后面加上/n/这样再到第二行第一行**************然后加上/n/然后第二行,这个/n/就是你换行的
你不用这个会出错 jhq999 发表于 2022-3-14 11:46
你这种方法技术含量很高,但是涉及到数学知识,在比赛中没有时间算数学题,所以我还是用简单粗暴的/n/换行符来弄一个C,虽然这很费时间,但是简单 编程追风梦 发表于 2022-3-14 18:53
你这种方法技术含量很高,但是涉及到数学知识,在比赛中没有时间算数学题,所以我还是用简单粗暴的/n/换 ...
{:5_109:} 很简单啊,用printf打印就行了 FallenLight 发表于 2022-3-28 00:27
很简单啊,用printf打印就行了
听君一席话,胜听一席话 #include <stdio.h>
int main(void)
{
printf("\n\
*****\n\
*\n\
*\n\
*\n\
*\n\
*****\n");
return 0;
}
页:
1
[2]