图形基本变换c语言代码,图形变换-C语言课程设计.doc

学号

《》

课程设计报告

图形变换网络工程班级:16(3)姓名:指导教师:成绩:

计算机学院

2017 年 5月 10日

目录- 1 -

1 设计要求- 2 -

2 程序功能- 2 -

3 核心算法- 2 -

4 程序代码- 2 -

5 运行结果- 2 -

6 程序创新说明- 3 -

参考文献- 3 -

C语言图形程序设计主要内容包括图形模式的初始化、基本图形功能、图形窗口以及图形模式下的文本输出等图形函数的使用,以及按键处理和声音等。学生根据C语言图形程序设计指导书,通过编辑、编译、调试、运行示例代码,逐步掌握C语言图形应用程序中常用函数的作用与使用方法,并综合运用《C语言程序设计》课程所学知识,设计、实现具有创新功能的程序。成果物是一个综合性较好的图形应用程序和项目报告。

1 设计要求

设计并实现一个独特的图形应用程序。要求程序功能完整;包含屏幕颜色设置、图形绘制与填充、图形窗口设置、图形模式下文本输出、按键操作等;用户界面友好;代码量500行以上。

2 程序功能

使用if,for,switch,circle,line,arc及另外一些图形化编程函数实现一些画面效果(形状颜色变化,字体颜色大小设置等),最后使用line画线的方法画出中文“再见“二字。

3 核心算法

大量使用for循环,switch、if判断来实现一些画面的变化;大量使用函数调用的方式来保持代码的整洁;使用delay()函数来延迟两幅画面切换的时间;大量使用图形化编程的函数和方法来实现画面效果。

注:流程图无能为力了,不会画。

4 程序代码

#include

#include

#include

#include

/*模块化编程*/

/*函数调用*/

void start();

void tuoyuan();

void guochang();

void kaitou();

void huaban();

void tree();

void moon();

void end();

void zai();

void jian();

main()

{

int gdriver;

int gmode;

int i;

int line;

clrscr();

gdriver=DETECT;

initgraph(&gdriver,&gmode,"C:\\TC20\\BGI");

kaitou();

start();

getch();

tuoyuan();

delay(800);

setbkcolor(15);

cleardevice();

/*插入眼睛像*/

ellipse(320,240,0,360,30,17.5);

setcolor(4);

circle(320,240,17.5);

setfillstyle(1,4);

floodfill(320,240,4);

/*画颜色渐变同心圆*/

for(i=0;i<=30;i++)

{

setcolor(i);

circle(320,240,20+i*10);

delay(80);

}

delay(800);

guochang();

delay(1000);

cleardevice();

huaban();

moon();

tree();

delay(500);

cleardevice();

end();

setbkcolor(6);

zai();

delay(1000);

}

/*开头过渡*/

void start()

{

int gd;

int gm;

gd=DETECT;

initgraph(&gd,&gm,"C:\\TC20\\BGI");

randomize();

cleardevice();

setbkcolor(3);

setcolor(4);

settextstyle(0,0,2);

outtextxy(100,160," \t\t\t\t ARE YOU READY?!");

settextstyle(0,0,2);

outtextxy(100,240," Input any key,let's go!");

}

/*画一些形状颜色渐变椭圆*/

void tuoyuan()

{

int x=360;

int y=160;

int driver;

int mode=VGAHI;

int num=20;

int i;

int t;

int b;

driver=DETECT;

initgraph(&driver,&mode,"C://TC20

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/431289.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

stm32 isp下载官方软件android_OpenCanvas免费版下载_OpenCanvas绘图软件官方版下载7.0.25...

OpenCanvas 是一款小巧的CG手绘软件&#xff0c;让用户在使用数位板在电脑上绘图时&#xff0c;就像是在纸上手绘一样&#xff0c;可以画出极为细致的图像。OpenCanvas功能简捷、体积小巧、运行速度快&#xff0c;大家可以很快上手&#xff0c;非常适合入门级手绘爱好者使用。对…

centos7限制cpu使用_CentOS7 CPU隔离配置

1. 修改grubCentOS7中grub存放位置在&#xff1a;/etc/default/grub初始内容如下&#xff1a;1 [rootdellserver default]# catgrub2 GRUB_TIMEOUT53 GRUB_DISTRIBUTOR"$(sed s, release .*$,,g /etc/system-release)"4 GRUB_DEFAULTsaved5 GRUB_DISABLE_SUBMENUtrue…

c语言solaris中图形库,成功弄出simics下的CDE登录界面,与大家分享

simics下的cde可以在安装的时候&#xff0c;就启动图形console进行安装&#xff0c;让installer自动配置图形console&#xff0c;也可以先用默认的text console进行安装&#xff0c;之后再进行配置。我用的方法是先用text console安装&#xff0c;安装完成后再启动图形console。…

【转】图文详解YUV420数据格式

YUV格式有两大类&#xff1a;planar和packed。 对于planar的YUV格式&#xff0c;先连续存储所有像素点的Y&#xff0c;紧接着存储所有像素点的U&#xff0c;随后是所有像素点的V。对于packed的YUV格式&#xff0c;每个像素点的Y,U,V是连续交*存储的。 YUV&#xff0c;分为三个分…

python安装pip_在MAC下安装pip,并关联到相应的python版本

在MAC下安装pip&#xff0c;并关联到相应的python版本 博客说明 文章所涉及的资料来自互联网整理和个人总结&#xff0c;意在于个人学习和经验汇总&#xff0c;如有什么地方侵权&#xff0c;请联系本人删除&#xff0c;谢谢&#xff01; 说明 不多说了&#xff0c;说就是电脑重…

java台球游戏设计原理_台球游戏的核心算法和AI(1)

前言:08年的时候, 写过一个台球游戏, 用的是java, 不过代码真的是用传说中的神器notepad写的(你信吗? 其实是用GVIM写的, ^_^), 很多类都在同一java文件中编写. 可见当时的JAVA水平真的不咋地, 时过进迁, 还是一样的不咋地.这边是当时的CSDN下载链接: java(台球游戏), 实现比较…

murmurhash

http://www.oschina.net/translate/state-of-hash-functions http://calvin1978.blogcn.com/articles/murmur.html https://zh.wikipedia.org/wiki/Murmur%E5%93%88%E5%B8%8C http://www.trueeyu.com/?p1325转载于:https://www.cnblogs.com/LyonLys/p/murmurhash.html

cat命令详解_好程序员Python培训之详解eval好与坏

好程序员Python培训之详解eval好与坏&#xff0c;文中通过示例代码介绍的非常详细&#xff0c;对大家的学习或者工作具有一定的参考学习价值&#xff0c;下面我们一起来看一下吧。eval是Python的一个内置函数&#xff0c;这个函数的作用是&#xff0c;返回传入字符串的表达式的…

对代理商的评价怎么写_简历中的自我评价怎么写才能更吸引人?

有统计报告显示&#xff1a;HR每天看到的职位简历至少1000&#xff0c;每封简历的停留时间不过10秒。在这么短的时间内&#xff0c;让hr印象深刻&#xff0c;自我评价的价值就出现啦&#xff01;不少人认为自我评价要幽默风趣&#xff0c;例如&#xff1a;“您都看到这儿了&…

thinkphp小技巧

thinkphp小技巧 if(IS_POST) _404("页面不存在",U("index")) //如果不是POST提交&#xff0c;则跳转到index。debug模式中不跳转&#xff0c;显示string。 if(IS_POST) halt("页面不存在") //更详…

android ui状态栏高度,Android--状态栏高度,导航栏高度,Window高度,DecorView高度,heightPixels...

1:DecorView的高度DecorView的高度代表的是: 整个装饰窗口的高度, 这个高度包括:状态烂的高度和导航栏的高度.(状态栏和导航栏通常叫做装饰窗口, 而ActionBar不属于装饰窗口)这个高度, 可以代表着整个玻璃屏幕的高度.2.Window的RootView的高度RootView的获取方式:getWindow().f…

sdk是什么_人脸识别在美颜SDK中存在什么意义?

在得益于短视频、直播平台的飞速发展下&#xff0c;美颜SDK也得到了很大的发展&#xff0c;变得越来越受欢迎。美颜SDK现在已经融入到我们的生活&#xff0c;是社交中必不可少的工具。现在人们对于美颜的要求越来越高&#xff0c;这就意味着美颜SDK的质量也要越来越好。而人脸识…

检查mysql的replication_MySQL Replication需要注意的问题

MySQL Replication 大家都非常熟悉了&#xff0c;我也不会写怎么搭建以及复制的原理&#xff0c;网上相关文章非常多&#xff0c;大家可以自己去搜寻。我在这里就是想总结一下mysql主从复制需要注意的地方。有人说主从复制很简单嘛&#xff0c;就是master&#xff0c;slave的se…

socket工具android,Android通过socket长连接实现推送

工具&#xff1a;Android studio软件方法及协议&#xff1a;socket、protobuf实现原理&#xff1a;通过本地建立一个socket&#xff0c;绑定服务器IP和port&#xff0c;然后connect&#xff0c;再开启另外线程定时心跳(注意这里的心跳不是自定义发送数据&#xff0c;而是采用so…

一行代码为UITextField添加收键盘功能

iOS开发中收键盘是十分常用的功能&#xff0c;只需一行代码即可为ViewController添加工具条收键盘功能 更重要的是使用catogory&#xff0c;无代码污染。 代码 // UITextFieldkeyboard.h // TextFieldKeyBord // // Created by luo.h on 15/10/8. // Copyright © 2015…

excel一列求和_【excel每日提升】Excel周日不排班!

【新朋友】点击标题下面蓝色字“王俊东“关注。 【老朋友】点击右上角&#xff0c;转发或分享本页面内容。excel系列课程excel特效系列课程&#xff01;第1节&#xff1a;Excel有公式的单元格标记颜色&#xff0c;很简单&#xff01;第2节&#xff1a;Excel删除空行&#xff0…

ubuntu没有指纹登录_ubuntu安装指纹识别驱动

无聊时在用lsusb突然发现笔记本的指纹识别被列了出来&#xff0c;就想着怎么装上一个指纹识别的软件&#xff0c;找一了一下&#xff0c;找到了解决的办法&#xff0c;添加下面的源&#xff0c;安装fingerprint-gui就可以了。sudo add-apt-repository ppa:fingerprint/fingerpr…

android 减速动画,Android View Animation

概述可译为视图动画&#xff0c;分为缩放动画平移动画渐变动画旋转动画Android系统中定义了一个抽象类Animation来定义这种视图动画&#xff0c;它的具体子类如下表&#xff1a;动画名称对应的子类xml中标签描述缩放动画ScaleAnimation< scale />S平移动画TranslateAnima…

主键生成

早上时候想到ID生成这一回事&#xff0c;随便记下。 我们很多时候会用到数据库。而数据表中的记录基本上都是有主键的。读书的时候&#xff0c;最常见的主键生成方式&#xff0c;就是主键自增。例如&#xff1a; record_id int(11) NOT NULL AUTO_INCREMENT COMMENT 记录ID&…

excel排名_Excel案例:比赛中,如何实时显示排名

其实今天的重点&#xff0c;是要借这个常规比赛记分与公布的案例&#xff0c;介绍一下数组函数&#xff01;今天的案例&#xff0c;最关键的地方只用了一次数组函数就搞定了&#xff01;------分-----割-----线-----下面进入案例&#xff1a;常见的比赛&#xff0c;有很评委一起…