用C语言编写屏幕保护程序

2 0 0 5 年 5 月

第 11 卷第 2 期

安庆师范学院学报 (自然科学版)

J o u rna l o f A nq ing Te a c he rs C o lle g e (N a tu ra l S c ie nc e )

M a y. 2 0 0 5

V o l. 11 NO. 2

Ξ

ΞΞ

用C

语言编写屏幕保护程序

胡则辉 , 范

(杭州师范学院 信息工程学院, 浙江 杭州 310018)

要: 图形程序是计算机程序中很重要的内容, 我们可以利用C 语言中的图形函数编写出风

格迥异的屏保程序。 本文通过具体程序, 介绍了用C 语言编写屏幕保护程序的基本思路和方法。

关键词: C 语言; 屏幕保护程序; 编程; 输出

中图分类号: T P 312

文献标识码: A

文章编号: 1007- 4260 (2005) 02- 0016- 04

C 语言是世界上应用最广泛的几种语言之一, 应用C 语言可以对数学问题求解或实现其它应用编

程。屏幕保护程序可以用C 语言来实现, 通过编写自己喜爱的屏幕保护程序可以加深对C 语言的了解,

同时可以提高编程者应用编程语言解决实际问题的能力, 培养编程者敏锐的观察力和极强的创造力。

基本理论

1

T u rbo C 提供了非常丰富的图形函数1

, 我们使用这些图形处理函数可以实现各种图形功能, 所有

的图形函数的原型均在 G rap h ic s. h 中。 可以利用这些函数来实现图形模式的初始化, 从而建立独立的

图形程序。

屏幕保护程序一般都是一些简单的动画, 我们可以利用C 语言中的随机函数和延时函数来实现动 态效果。 下面我们简要介绍一下编写屏幕保护程序中常用的几个函数:

( 1) 在屏幕作图之前, 我们必须根据显示适配器的种类将显示器设置成为某种图形模式, 设置屏幕 为图形模式, 可以用下列图形初始化函数:

V o id in itg rap h ( in t fa r 3 d r ive r, in t fa r 3 d r ive r, ch a r fa r 3 p a th ) ; 其中 d r ive r 和m o de 分别表示图 形驱动器和模式, p a th 是指图形驱动器所在的目录路径。

( 2) 有时我们并不知道所用的图形显示器适配器的类型, 或者需要将编写的屏保程序用于不同的

图形驱动器, 我们必须对显示器硬件作自动检测, T u rbo C 中提供了自动检测显示器硬件的函数, 其调 用格式为: V o id de tec tg rap h ( in t 3 d r ive r, in t 3 m o de) ; 为了实现此功能, T C 中还提供了一种更简单的 方法, 就是用 d r ive r= D E T EC T 语句后再跟 in itg rap h () 函数就可以了。

( 3) 为了获得丰富多彩的视觉效果我们需要对屏幕颜色进行设置, 图形模式下常用的屏幕颜色设

置函数有:

Se tb k co lo r () 函数: 该函数用来设置图形屏幕的背景颜色, 其原型为: V o id se tb k co lo r ( in t co lo r) Se tco lo r () 函数: 该函数用来设置作图颜色。 其原型为: V o id se tco lo r ( in t co lo r)

V o id c lea rdev ice (vo id) 函数: 清除屏幕内容函数。

V o id de lay () 函数: 延时函数。

收稿日期: 2004- 12- 27

作者简介: 胡则辉 (1979- ) , 男, 浙江杭州人, 杭州师范学院计算机教育专业研究生。

Ξ

ΞΞ

2实例实现步骤

2. 1满天星

当程序运行后, 会看到屏幕上随机地画出五颜六彩的小圆点, 按任意键退出程序。 (效果见图 1)

图 1 实例 1 效果图

图 2 实例 2 的输出

设计思想: 本例是一个综合性的实例, 主要讲解动画的制作, 用w h ile 循环控制按任意键结束, 利用

随机函数产生点的颜色并将随机函数作为画圆的参数与延时函数配套使用, 得到较迷幻的动画效果。

简单步骤: 1) 图形初始化2 : in itg rap h (&gd r ive r, &gm o de, ”c: \ \ tc3\ \ b g i”) ;

2) 设置不同颜色在不同的地方画圆:

se tco lo r ( ran dom (255) ) ; ?3 设置随机颜色3 ?

c irc le ( ran dom (900) , ran dom (500) , ran dom (3) )

用c语言编写屏幕保护程序,用C语言编写屏幕保护程序.doc相关推荐

  1. c语言编写数据存储的游戏,c语言经典小程序和c语言编写的小游戏带注释(自动保存的).doc...

    c语言经典小程序和c语言编写的小游戏带注释(自动保存的) 1.写一个定时?关机的小程?序,可以立即关?闭计算机,也可以一段?时间后关闭?计算机. #inclu?de #inclu?de #inclu? ...

  2. 单片机C语言数据存储原理,学习单片机C语言,必知的数据存储与程序编写知识!...

    一.五大内存分区 内存分成5个区,它们分别是堆.栈.自由存储区.全局/静态存储区和常量存储区. 1.栈区(stack):FIFO就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区. ...

  3. visual studio 如何编写c语言程序,用Visual Studio 编写纯C语言程序

    本篇文章讲述如何用微软的 Visual Studio 编写纯C语言程序,这里的纯C语言,指的是 ANSI C 语言. 要在 Visual Studio 里创建一个ANSI C语言程序,请按以下步骤执行 ...

  4. c语言中fact函数怎么调用,C语言程序题: 1、编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现...

    点击查看C语言程序题: 1.编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现具体信息 答:int fac(int n) //非递归{int f=1; for(;n;) ...

  5. devc 如何编写java,Android For JNI(1)——JNI的概念以及C语言开发工具dev-c++,编写你的第一个C语言程序,使用C启动JAVA程序...

    Android For JNI(一)--JNI的概念以及C语言开发工具dev-c++,编写你的第一个C语言程序 当你的Android之旅一步步的深入的时候,你其实会发现,很多东西都必须去和framew ...

  6. 三菱R系列PLC程序 全部采用ST语言编写,内部使用函数块和结构体,程序思路清晰

    三菱R系列PLC程序 全部采用ST语言编写,内部使用函数块和结构体,程序思路清晰,简洁明了. 通过结构体和函数块的使用,可以使您在程序编写水平得到很大提高. ST语言是PLC后续的主流语言,是日后编程 ...

  7. 用c语言输出一个字母的,用c语言编写程序输出一个短句

    1. 输入一个数然后输出一句话的程序用C语言怎么编写 用if或switch语句如`: switch((int)x) { case 9:printf("你好\n");break; c ...

  8. 编写一个能管理城市区号信息的系统程序,系统能够读取、查找、输出城市区号信息。 c语言 ,,其中,区号查询内容显示效果为:

    编写一个能管理城市区号信息的系统程序,系统能够读取.查找.输出城市区号信息. c语言 ,其中,区号查询内容显示效果为: ![img](https://img-mid.csdnimg.cn/releas ...

  9. 最初编写的c语言程序称为,C语言程序设计复习参考答案

    <C语言程序设计复习参考答案>由会员分享,可在线阅读,更多相关<C语言程序设计复习参考答案(46页珍藏版)>请在人人文库网上搜索. 1.随堂练习12]1. 下面哪些标识符属于合 ...

  10. 校运动会c语言程序编写,校运动会管理系统报告C语言(含完整代码)

    <校运动会管理系统报告C语言(含完整代码)>由会员分享,可在线阅读,更多相关<校运动会管理系统报告C语言(含完整代码)(20页珍藏版)>请在人人文库网上搜索. 1.目 录陈一. ...

最新文章

  1. Azure手把手系列5:Azure帐户和订阅
  2. 整合公司3个网站后台管理子系统的经验总结 - 实现多系统的单点登录(ASP.NET + ASP)...
  3. 深入理解分布式技术 - 理论基石 CAP
  4. 【玩转cocos2d-x之十九】从CCObject看cocos2d-x的拷贝机制
  5. c语言中左右对齐的作用,c语言中右对齐的符号
  6. 如何评价一个开源项目——价值流网络
  7. ALAssetsLibrary-代码操作iOS相册资源
  8. hdu 1861 游船出租 tag:模拟
  9. 【计数网络】梯度累加增加LCFCN的BatchSize
  10. html 字体思源_网页使用思源字体 CSS
  11. 准银河字母、当铺密码、摩斯电码详解
  12. Gradle插件 protobuf自动编译
  13. dataframe 查找的isin()用法
  14. 考研英语近义词与反义词·一
  15. 【网络技术联盟站】瑞哥教你如何使用 Console 接口管理设备
  16. python--22 类和对象
  17. 进军NFT,第三代公链GGC与NFT3.0技术平台BOBO、OKEx NFT深度联合
  18. tiny4412编译出来的zImage不能开机
  19. 中国石油大学《中国当代散文》共享课程考试
  20. Caffe 源码 - BatchNorm 层与 Scale 层

热门文章

  1. 机器人学相关书籍(长期更新)
  2. php公众号开发 点菜,微信公众号点餐系统怎么弄 微信点餐系统怎么开发
  3. 尾矿库监测 GNSS北斗高精度定位终端机应用
  4. 【报告分享】2021年中国网络文学出海报告-艾瑞咨询(附下载)
  5. 打印机加粉出现的问题:打印机m7206清零
  6. wps 云服务器登录_WPS云服务使用协议
  7. 中兴B860AV2.1U,联通版本,强刷固件线刷包
  8. matlab 图像分割并填充颜色
  9. 两款常用的 MQTT 调试工具
  10. php开发人脸识别流程,php使用face++实现一个简单的人脸识别系统