- 22
- 0
- 约2.57千字
- 约 7页
- 2017-09-25 发布于广西
- 举报
引言
1.文档定义
这篇文档描述的是这样的一个程序:运用Easyx图形库,把输出的图形界面用矩形块填满,要求这些矩形块按照一定时间周期(时间间隔不做强制要求),随机(位置,颜色)填充,直到填满。
2.编写目的
将这个小程序做成一个具有一定规范的例子,让更多的同学熟悉Easyx的相关操作。
3.编写背景
IT培优项目C语言图像小组成员,从题目提出至今,通过深刻地讨论和交流,形成了以下文档。
可行性分析
1.时间可行性
有时候想为这样一个如此芊瘦的程序写一个说明书有点小题大做了。因为编写这样一个程序根本占用不了你多少时间,也就一个小时左右,包括前期的分析和写代码。所以看的时候直接把这些跳过吧,如果你只对代码感兴趣的话。
2.技术可行性
Easyx:
EasyX 是针对 C++ 的图形库,可以帮助 C 语言初学者快速上手图形和游戏编程。
Visual C++6.0:
这个学习c语言的基本都会哈,说一句,win7可以用哈,就不废话了。
需求分析
1.实现目标
将135中颜色9*15排列(不应该这么快把结果拿出来,但是违例一次吧)
2.功能需求
颜色需求:
程序中的颜色来自一个名为rgb.txt的文档中,文档中的每一行都是记录了一个颜色的RGB值,每次都读取一行没有被读取的行,取出RGB值进行色块的填充。
算法需求:
这个程序主要编写两个算法,一个是产生不重复的随机数,另一个是根据产生的随机数在特定的位置绘制矩形。
总体设计
详细设计与实现
实现代码:
#include stdio.h
#include stdlib.h
#include string.h
#include graphics.h
#include windows.h
#include conio.h
#include time.h
int function(int arry[136], int n, int m);
int arryrgb[136] = {0};
int arry[136] = {0};
//将一个数字字符转换成对应数字
int CharToint(char a)
{
return a - 0;
}
//将arry数组的前i位转换成一个数值
int Char_To_int(int i, char arry[3])
{
int temp;
int result = 0;
int k=1;
for(int j = i; j 0; j-- )
{
temp = CharToint(arry[j-1]);
result += (temp*k);
k=k*10;
}
return result;
}
//将一串形如255,244,213的这样一串字符串,提取出三个整数
//作为RGB值
int ArryToRGB(char RGB[20], int values[3])
{
char store[3];
int i = 0;
for(int j = 0; j 3; j++)
{
int k = 0;
while(1)
{
if( RGB[i]0 || RGB[i]9)
{
values[ j] = Char_To_int(k,store);
i++;
break;
}
store[k] = RGB[i];
k++;
i++;
}
}
return 0;
}
//从文本中获取形如这样的(255,244,213)的一串字符串
int getVALUES(int values[3])
{
FILE *fp = fopen(RGB.txt,r);
char tBuf[20];
srand((unsigned) time(NULL));
int n = (1 + rand()%135);
n = function( arryrgb ,n, 135);
int k= 0;
while(fgets(tBuf,100,fp) != NULL)
{
k++;
if( k == n)
{
ArryToRGB(tBuf , values);
}
}
fclose(fp);
return 0;
}
//对由随机数发生器产生的数二次处理,确保输出没有重复的
int function(int arry[135],int n, int m)
{
if(arry[n] == 0)
{
arry[n] = n;
return n;
}
else
{
if(n == m)
{
n = 1;
function(arry, n, m);
}
else function(arry,
您可能关注的文档
- 8基于“学习共同体”课堂教学模式的研究与实践.doc
- 2007年鲁班奖.doc
- 2009年甘肃省行政能力测试真题及答案解析部分.doc
- 2010新课程地理学科高考特点分析及应对策略.doc
- 2010一级建造师法规真题.doc
- aa基于生产型班组的管理协同模型及其应用.doc
- S62正文、结论、参考文献等标准格式经管文科专业学.doc
- 毕业设计10号文献翻译.doc
- 第七节主要财务指标分析.doc
- 分析百度分享代码对搜索排序有何影响.doc
- 云南省涧南彝族自治县2026届中考三模数学试题含解析.doc
- 重庆市巫溪中学2026届中考三模生物试题含解析.doc
- 2026届甘肃省张掖市高台县重点名校中考数学模拟精编试卷含解析.doc
- 2026届重庆一中学中考生物最后冲刺浓缩精华卷含解析.doc
- 2026届江西省萍乡市安源区中考生物模试卷含解析.doc
- 2026届山东省曲阜师范大附属实验校中考生物考前最后一卷含解析.doc
- 山西省运城市垣曲县重点中学2026届中考生物考前最后一卷含解析.doc
- 湖北省谷城县达标名校2026届中考生物押题卷含解析.doc
- 2026届河南省三门峡市义马二中中考生物考试模拟冲刺卷含解析.doc
- 树立和践行正确政绩观重点纠治十种偏差问题对照查摆清单(100条).docx
最近下载
- 计算机江苏对口单招文化综合理论试卷 (2).doc VIP
- 2025年铜陵职业技术学院单招职业技能测试题库(研优卷).docx VIP
- 《公务用车管理规范与使用制度》.docx VIP
- DB21_T 4236-2025 地理标志产品 大连虾片.pdf VIP
- 学前教育学 课件 第1、2章 绪论;学前教育的目标、内容的方法.ppt
- 灭火器材灭火培训.pptx VIP
- DB23T 2799-2021 灌入式复合混凝土路面设计与施工技术规范.docx VIP
- DB53_T 1443.2-2025 食品安全应急抽检技术规范 第2部分:自然灾害.docx VIP
- 板蓝根栽培技术讲座课件PPT.ppt
- DB32_T 5214-2025 合作机构经办社保业务服务规范.docx VIP
原创力文档

文档评论(0)