c语言,绘制椭圆并使其旋转.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c语言,绘制椭圆并使其旋转

设计题目:绘制椭圆并使其旋转。 计算机程序训练题目及要求 目录 一.训练目的…………………………………………………2 二.设计要求…………………………………………………2 三.训练题目…………………………………………………2 四.具体内容…………………………………………………2 一·训练目的: 计算机程序设计训练是学习完《程序设计》课程后进行的一次全面的综合性上机实验。其目的在于为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。设计报告交报告的内容题目内容的描述 应用程序功能的详细说明 输入数据类型、格式和内容限制; 主要模块的算法描述 –以程序流程图的方式给出 –简要的语言描述 结束语 程序的源代码清单 报告的字数,不算源代码清单不少于4页 按规定的模板封面输出,不准自定义封面格式 提交报告的格式正文宋体小四号字 每个自然段开始空两格. 文中英文用新罗马(time new roman),四号 源程序清单用英文新罗马五号 提交报告封面注:对于程序中未能实现的部分需要加以说明。对于程序中所参考的部分代码需要加以声明,并说明出处。#includestdio.h // 标准输入输出函数 // #includestdlib.h // 标准库函数 // #include graphics.h//图形函数// #include math.h//数学函数// exit()函数 该函数的作用是关闭所有文件,终止正在执行的程序,待用户检查错误修改后再运行。 fopen函数 文件的打开 fopen( )用来打开文件。fp=fopen(d:\\ellipse.txt,r) 的意义是打开d磁盘目录中的文 fscanf ( )函数 其调用的一般形式为:fscanf (文件指针变量,格式控制字符,变量地址列表 )。该函数的功能是以格式控制字符串中所指定格式将数据从文件指针所指向的文件中读取出来,然后分别送给所指定的变量。 conio.h不是C标准库中的头文件。 conio是Console Input/Output(控制台输入输出)的简写,其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作,比如getch()函数等 六·程序源代码 #include dos.h #include graphics.h #include math.h #include bios.h #include stdio.h #define RADIAN(angle) 3.14159*angle/180 /*定义宏实现角度转换成弧度*/ int direction; void rotate(int x0,int y0,int *x,int *y,double angle) { /*点(X,Y)绕(X0,Y0)点旋转angle弧度*/ double r=sqrt((*y-y0)*(*y-y0)+(*x-x0)*(*x-x0)),a0=atan2(*x-x0,*y-y0); if(direction) {*x=x0+r*cos(a0+angle); *y=y0+r*sin(a0+angle); } else { *x=x0+r*cos(a0-angle); *y=y0+r*sin(a0-angle); } } void myellipse(int x0,int y0,int a,int b,int angle0) { /*画以(X0,Y0)为中心a为实半轴长,b 为虚半轴长,angle为旋转的角度*/ int x,y;double r=0.0,end=RADIAN(360),angle=RADIAN(angle0); x=x0+a;y=y0; rotate(x0,y0,x,y,angle); moveto(x,y); for(r=0.0;r=end;r+=0.01) { x=x0+a*cos(r);y=y0+b*sin(r); rotate(x0,y0,x,y,angle); lineto(x,y); } } main() { i

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档