重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
可以参考下面的代码:
公司主营业务:成都网站制作、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出枝江免费做网站回馈大家。
#includemath.h
main()
{
double y;
int x,m;
for(y=10;y=-10;y--)
{
m=2.5*sqrt(100-y*y);
for(x=1;x50-m;x++)
printf(" ");
printf("*");
for(;x50+m;x++)
printf(" ");
printf("*\n");
}
}
扩展资料:
for循表达式为:for(单次表达式;条件表达式;末尾循环体){中间循环体;}。
其中,表示式皆可以省略,但分号不可省略,因为“;”可以代表一个空语句,省略了之后语句减少,即为语句格式发生变化,则编译器不能识别而无法进行编译。for循环小括号里第一个“;”号前为一个为不参与循环的单次表达式。
参考资料来源:百度百科-for循环
#include graphics.h
#include stdio.h
#include math.h
#define TWOPI (3.1415926*2)
typedef struct point
{
int x;
int y;
}POINT;
void main()
{
int gd,gm;
POINT arr[1000];
int i;
int redius=80;
gd=DETECT;
initgraph(gd,gm,"C:\\JMSOFT\\DRV");
for(i=0;i1000;i++)
{
arr[i].x=300+redius*sin(((1.0*i)/1000)*TWOPI);
arr[i].y=300+redius*cos(((1.0*i)/1000)*TWOPI);;
}
for(i=0;i999;i++)
line(arr[i].x,arr[i].y,arr[i+1].x,arr[i+1].y);
getch();
closegraph();
}
#includestdio.h
#includemath.h
main()
{
double y;
int x,m;
for(y=10;y=-10;y--) //表示图形的第y行,通过for循环打印所有行
{
m=2.5*sqrt(100-y*y); //用y作为自变量,根据弦长与纵坐标y的函数关系计算出此行上的弦 长的一半也就是两个星形符号之间的距离的一半,并用m表示。
for(x=1;x50-m;x++) //以50个字符长度为基准根据弦长来确定每行左数第一个星形的位 置,此位置前全印空格
printf(" ");
printf("*");
for(;x50+m;x++) //以50个字符宽度为基准来确定每行第二个星形的位置
printf(" ");
printf("*\n");
}
}
//此程序打印的只是个大概的圆形,因为运行输出窗口里,相邻的行距和邻字符的列距是不相等的,所以语句 m=2.5*sqrt(100-y*y);中的2.5是用来修正此误差的。可根据具体运行平台适当修改。 如果还看不懂,再问
#include math.h#include stdio.h#define R 10 //半径 #define X 10 //圆心x坐标 #define Y 10 //圆心Y坐标 int main(void)
{ int x,y; int m; int i; for(i=Y-R;i=1;i--)
{ printf("\n");
}
for(y=R;y=-R;y--)
{
m=2*sqrt(R*R - y*y); //横坐标的偏移量,因为字体长宽比例为2,所以要乘2
for(x=1;xX+R-m;x++) //打印左半圆
{ printf(" ");
} printf("*"); for(;xX+R+m;x++) //打印右半圆
{ printf(" ");
} printf("*\n");
}
}
给你个画圆的例子
你参考一下
#include graphics.h
#include stdlib.h
#include stdio.h
#include conio.h
int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy;
int radius = 100;
/* initialize graphics and local variables */
initgraph(gdriver, gmode, "");
/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
}
midx = getmaxx() / 2;
midy = getmaxy() / 2;
setcolor(getmaxcolor());
/* draw the circle */
circle(midx, midy, radius);
/* clean up */
getch();
closegraph();
return 0;
}
#includestdio.h
#includemath.h
int main()
{
double y;
int x,m;
for(y=10;y=-10;y–)
{
m=2.5*sqrt(100-y*y); /*计算行y对应的列坐标m,2.5是屏幕纵横比调节系数因为屏幕的
行距大于列距,不进行调节显示出来的将是椭圆*/
for(x=1;x30-m;x++) printf(" "); /*图形左侧空白控制*/
printf("*"); /*圆的左侧*/
for(;x30+m;x++) printf(" "); /*图形的空心部分控制*/
printf("*\n"); /*圆的右侧*/
}
return 0;
}