计算机技术基础(c语言)用C语言描绘玫瑰花

计算机技术基础课程设计

C语言

设计报告

题目:用C语言描绘玫瑰花

一、选题背景

通过C语言的学习,我们知道了可以用C语言编写的程序来描绘出优美的

画面。

玫瑰花是美丽的代表。所以我将画图的程序来实现玫瑰花的图象。

二、设计思想

本程序将利用图形库函数、数学函数和标准I/O函数来实现函数的运行。

依靠我们学过的调用函数来实现。

图形中玫瑰花的形状是利用画图函数并根据其坐标来实现的,图形中的弧线

是利用曲线函数实现的。

主函数的调用函数大多是我们没有学过的

initgraph /*初始化图形系统*/

cleardevice /*清除图形屏幕*/

hua /*自己定义的函数*/

setcolor /*设置当前画图颜色*/

rectangle /*话矩形边框*/

getch /*输入字符*/

closegraph /*关闭图形系统*/

floodfill/*填充一个有界区域*/

三、程序流程图:

N

Y

N

Y

四、主要解决问题:

一个简单的玫瑰花程序这个玫瑰花的程序,可是问题不少,在这个语句(rc(x+64,y-57,300,490,17);)中出现了颜色外泻 。

解决办法:利用floodfill函数实现填充一个有界函数。

五、程序清单:

#include

#include

#include

#include 35

#define FNX(x) (int)(xo+(x)*1.0)

#define FNY(y) (int)(getmaxy()-(yo+(y)*1.0))

#define FNX2(phi) cos(phi)*ac-sin(phi)*bs

#define FNY2(phi) cos(phi)*as+sin(phi)*bc

/*画旋转的椭圆*/

void elli(int xo,int yo,int a,int b,double theta)

{

int i;

double da,c,s,ac,as,bc,bs,xf,yf,phi,x,y;

theta=theta*0.01745;

da=3*0.1745;

c=cos(theta);s=sin(theta);

ac=a*c;as=a*s;bc=b*c;bs=b*s;

x=FNX2(0);y=FNY2(0);

moveto(FNX(x),FNY(y));

for(i=1;i<=360;i++)

{

phi=i*da;xf=x*cos(phi)*0.1;yf=b*sin(phi)*0.1;

x=FNX2(phi);y=FNY2(phi);

lineto(FNX(x),FNY(y));

}

}

/*花*/

void hua(int x,int y)

{

register i;

/*画粉红色玫瑰*/

setcolor(12);

arc(x+65,y-60,150,350,8);

arc(x+66,y-54,300,470,8);

arc(x+65,y-56,30,230,10);

arc(x+64,y-57,300,490,17);

ellipse(x+73,y-30,250,450,27,40);

ellipse(x+59,y-30,100,290,27,40);

ellipse(x+65,y-40,140,270,20,30);

setfillstyle(SOLID_FILL,5);

floodfill(x+65,y-20,12);

/*画红色玫瑰*/

arc(x,y,150,350,12);

arc(x+1,y+8,280,470,12);

arc(x,y+2,30,230,16);

arc(x

用c语言做99玫瑰花,计算机技术基础(c语言)用C语言描绘玫瑰花.doc相关推荐

  1. 上海c语言做游戏培训,0基础C语言游戏逆向课程,培训视频+项目实战

    第一部分 1.Visual Studio IDE的安装和基本使用 1.Visual Studio IDE的安装和基本使用 .docx 1.Visual Studio IDE的安装和基本使用 .mp4 ...

  2. r语言做绘制精美pcoa图_科学网—R语言 PCA PCoA ggplot2 - 靳泽星的博文

    这一篇是衔接上一篇的,就是要用ggplot2程序包对PCA和PCoA进行可视化.代码我直接照搬过来了,只是绘图的时候用ggplot函数.ggplot2包实现了一个在R中基于全面一致的语法创建图形时的系 ...

  3. 二叉平衡树算法c语言,算法9-9~9-12:平衡二叉树的基本操作 (C语言代码)

    参考代码: #include #include #define True 1 #define False 0 #define EH 0 #define LH 1 #define RH -1 typed ...

  4. r语言做绘制精美pcoa图_科学网-R语言 PCA PCoA ggplot2-靳泽星的博文

    这一篇是衔接上一篇的,就是要用ggplot2程序包对PCA和PCoA进行可视化.代码我直接照搬过来了,只是绘图的时候用ggplot函数.ggplot2包实现了一个在R中基于全面一致的语法创建图形时的系 ...

  5. c语言函数游戏,C语言做游戏常用到一些函数大全 2011.doc

    蕾讳键哼蚂屋号煞同臭眼垣渊含短徽讽介毋蛾胀凉穗幸蒲蚂谁筷瞬懈汰摸某绿斌茫纸致忿拉烘七拔鹰勒匙怎搽炙拖铰冕鄙衙筏趣梧作骑芝计蓖婿揣拱夸曾霄后韶恃夷证卸冤腑免而肌蝇艰耽属搭舀题概快培盆臭懂崭苟误雀淄霍狂抬 ...

  6. C语言编程丨都说黑客一定要学C语言,这到底是为什么呢?

    黑客是一个中文词语,在台湾地区对应的中文词语为骇客,皆源自英文hacker,不同地区的中文使用习惯造成了翻译的差别.实际上,黑客(或骇客)与英文原文Hacker.Cracker等含义不能够达到完全对译 ...

  7. 自学python能学成吗-没有任何编程基础可以直接学习python语言吗?学会后能够做什么?...

    很明确的说 python非常适合没有任何编程基础的人入门.. 目前应用最多的:全栈开发.数据分析.运维开发,今天我们就以这三个重点的岗位来做一下自学Python的规划,希望你在学之前就能有结果的来走得 ...

  8. 河北工业大学c语言寻宝游戏,计算机技术基础(c语言)课程设计寻宝游戏.doc

    计算机技术基础(c语言)课程设计寻宝游戏 计算机技术基础(c语言)课程设计 寻宝游戏 #include #include #include #include #include #define ESC ...

  9. 潜艇大战c语言实验报告,计算机技术基础(c语言)课程设计-潜艇大战.doc

    计算机技术基础课程设计 C语言 设计报告 题目:简单潜艇大战 选题背景: 随着人们生活水平的提高,人们对精神生活的要求也随之提高了,当然,娱乐也成了人们生活中必不可少的一部分,为此,我用C语言编辑了一 ...

最新文章

  1. 【重磅】Tensorflow2.0实现29种深度强化学习算法大汇总
  2. php查询socket数据包头,php 查询数组值php中关于socket的系列函数总结
  3. Dotnet洋葱架构实践
  4. matplotlib 折线图_漂亮图表也可信手拈来,一文学会用Python绘制堆积折线图
  5. 用 Python 分析上网记录,发现了很多不可思议的事
  6. 提款机转账多久到账?
  7. 探索解析微服务下的RabbitMQ
  8. 语音合成(TTS)论文优选:HIERARCHICAL PROSODY MODELING FOR NON-AUTOREGRESSIVE SPEECH SYNTHESIS
  9. Myeclipse运行servlet文件页面报错404
  10. 汽车维修企业管理【6】
  11. 计算机无法安装系统,电脑为什么重装不了系统?
  12. 【CV】Swin Transformer:使用 Shifted Windows 的分层视觉 Transformer
  13. nginxWebUI :nginx可视化配置工具---实践
  14. CAD标注中全局比例(DIMSCALE)与比例因子(DIMLFAC)区别
  15. 代码重复率检查工具jsinspect 检查重复代码,去掉冗余代码。
  16. 掘金秋招征文大赛评选结果
  17. SHA256 Hashes
  18. 家用计算机桌,家用电脑桌尺寸一般是多大?
  19. 在阿里云使用 emqx 搭建 MQTT 服务器
  20. 做好电商产品运营的10个立足点

热门文章

  1. vue中input禁止输入中文_input禁止键盘及中文输入,但可以点击
  2. 第十章 初识面向对象
  3. linux ps le hrtime,前端Tips#4 - 用 process.hrtime 获取纳秒级的计时精度
  4. SQL分析阿里云淘宝电商数据
  5. Zabbix创建用户及告警媒介配置,配置qq邮箱告警配置/163(下)
  6. MacOs 12 微信闪退
  7. 通过钉钉网页上的js学习xss打cookie
  8. mysql TIMESTAMP 不能为NULL
  9. 一、Crowd的安装
  10. 怎么使用软碟通UltraISO制作Ubuntu镜像的U盘启动盘的详细步骤,镜像下载