操作系统课程设计C语言实现画板
- 格式:doc
- 大小:234.50 KB
- 文档页数:19
c 画图板课程设计一、课程目标知识目标:1. 学生能够理解并掌握c画图板的基本功能与操作方法。
2. 学生能够运用c画图板绘制基本的几何图形和简易场景。
3. 学生能够理解并运用c画图板中的颜色填充、线条粗细等工具进行作品创作。
技能目标:1. 学生能够运用c画图板进行创意绘画,提高绘画技巧和表达能力。
2. 学生能够通过c画图板的操作,培养观察力、想象力和创新能力。
3. 学生能够学会使用c画图板进行作品的保存、打开和分享。
情感态度价值观目标:1. 学生在c画图板绘画过程中,培养对美术创作的兴趣和热情,增强自信心。
2. 学生在合作交流中,学会尊重他人意见,培养团队协作精神。
3. 学生通过绘画创作,关注生活、热爱生活,培养积极向上的人生态度。
分析课程性质、学生特点和教学要求,本课程将目标分解为以下具体学习成果:1. 学生能够独立完成c画图板的安装与基本设置。
2. 学生能够运用c画图板绘制出至少三种不同的几何图形,并创作一幅简易场景作品。
3. 学生能够运用c画图板中的工具,创作出具有个性特色的绘画作品,并进行展示和分享。
4. 学生在课程学习过程中,积极参与讨论,主动帮助同学解决问题,表现出良好的团队协作精神。
二、教学内容本课程教学内容依据课程目标,结合教材内容进行选择和组织,主要包括以下三个方面:1. c画图板基本功能与操作- 认识c画图板界面和工具栏- 学会使用画笔、橡皮、颜色填充等基本工具- 掌握线条粗细、颜色选择等设置方法2. 几何图形与简易场景绘制- 绘制三角形、矩形、圆形等基本几何图形- 学习组合几何图形,创作简易场景- 掌握图形的移动、旋转和缩放等操作3. 创意绘画与作品展示- 运用c画图板进行个性化创作- 学习作品的保存、打开和分享方法- 组织学生进行作品展示,开展评价与交流教学大纲安排如下:第一课时:c画图板的认识与基本操作第二课时:几何图形的绘制与组合第三课时:简易场景创作与作品展示第四课时:创意绘画与实践操作第五课时:作品分享与评价交流教学内容进度:第一周:学习c画图板的基本功能与操作第二周:绘制几何图形,创作简易场景第三周:创意绘画与作品展示,进行评价与交流教学内容与教材紧密关联,遵循科学性和系统性原则,旨在帮助学生掌握c画图板的使用,提高绘画技巧,培养创新意识。
c 画图程序课程设计一、教学目标本节课的教学目标是让学生掌握C语言的基本语法和操作,学会使用画图程序进行简单的图形绘制。
通过本节课的学习,学生能够理解C语言的基本概念,熟练使用画图程序进行图形设计,培养编程思维和动手能力。
具体来说,知识目标包括:1.了解C语言的基本语法和数据类型。
2.掌握画图程序的基本功能和操作。
技能目标包括:1.能够编写简单的C语言程序。
2.能够使用画图程序进行基本的图形绘制。
情感态度价值观目标包括:1.培养学生的编程兴趣,提高学习的积极性。
2.培养学生团队合作和解决问题的能力。
二、教学内容本节课的教学内容主要包括C语言的基本语法和画图程序的使用。
具体安排如下:1.C语言基本语法:数据类型、变量、运算符、控制语句等。
2.画图程序的使用:图形绘制、颜色设置、图形属性等。
教学过程中,将结合具体的案例和练习题,让学生在实际操作中掌握C语言的基本语法和画图程序的使用。
三、教学方法为了提高学生的学习兴趣和主动性,本节课将采用多种教学方法相结合的方式。
包括:1.讲授法:讲解C语言的基本语法和画图程序的使用方法。
2.案例分析法:分析具体的编程案例,让学生在实际操作中掌握知识。
3.实验法:让学生动手编写C语言程序,使用画图程序进行图形绘制。
通过多种教学方法的运用,激发学生的学习兴趣,提高学生的编程能力和动手能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:C语言程序设计基础。
2.参考书:C语言编程实例解析。
3.多媒体资料:C语言语法讲解视频、画图程序操作演示视频。
4.实验设备:计算机、画图程序软件。
通过以上教学资源的运用,帮助学生更好地理解和掌握C语言的基本语法和画图程序的使用,提高学生的学习效果。
五、教学评估本节课的教学评估将采取多元化的评估方式,以全面、客观、公正地评价学生的学习成果。
评估主要包括以下几个方面:1.平时表现:通过课堂参与、提问、回答问题等环节,评估学生的学习态度和积极性。
c语言课程设计画图一、教学目标本课程的目标是让学生掌握C语言的基本知识,通过编程实践学会用C语言进行简单的图形绘制。
具体分为以下三个部分:1.知识目标:使学生了解C语言的基本语法、数据类型、运算符、控制结构等,并掌握基本的图形绘制原理。
2.技能目标:培养学生使用C语言进行图形编程的能力,能独立完成简单的图形绘制程序。
3.情感态度价值观目标:培养学生对计算机科学的兴趣,提高其动手实践能力,培养其创新精神和团队协作精神。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构等基础知识,以及图形绘制的基本原理和方法。
具体安排如下:1.第一章:C语言概述,使学生了解C语言的基本概念,掌握C语言的编译环境和基本语法。
2.第二章:数据类型和运算符,让学生掌握C语言的基本数据类型和运算符,为后续编程打下基础。
3.第三章:控制结构,引导学生掌握C语言的条件语句和循环语句,提高程序的控制能力。
4.第四章:函数,使学生了解函数的概念和作用,掌握函数的定义和调用方法。
5.第五章:图形绘制原理,讲解图形绘制的基本原理,引导学生掌握图形绘制的方法。
6.第六章:实践项目,让学生运用所学知识独立完成简单的图形绘制程序。
三、教学方法本课程采用讲授法、案例分析法和实验法相结合的教学方法,具体安排如下:1.讲授法:用于讲解C语言的基本语法、数据类型、运算符、控制结构等理论知识。
2.案例分析法:通过分析典型的图形绘制案例,使学生了解图形绘制的基本原理和方法。
3.实验法:让学生动手实践,独立完成图形绘制程序,提高其编程能力。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备等,具体安排如下:1.教材:《C语言程序设计》2.参考书:《C语言 Primer》3.多媒体资料:课件、教学视频等4.实验设备:计算机、网络设备等五、教学评估本课程的评估方式包括平时表现、作业、考试等,具体安排如下:1.平时表现:通过课堂参与、提问、讨论等方式评估学生的学习态度和理解能力,占总评的30%。
C语言实现图形界面C语言实现图形界面对于程序员来说是一项非常重要且有挑战性的任务。
随着计算机技术的不断发展,图形界面在软件开发中越来越重要,因此掌握如何使用C语言来实现图形界面也成为了程序员们必备的技能之一。
一、图形界面的基本概念在介绍C语言实现图形界面的具体方法之前,首先需要了解图形界面的基本概念。
图形界面是指通过图形元素(如按钮、文本框、菜单等)在屏幕上进行交互的界面,用户可以通过鼠标、键盘等设备与计算机进行交互操作。
二、使用C语言实现图形界面的方法1. 使用第三方库为了方便使用C语言实现图形界面,可以选择使用第三方库,如GTK、Qt等。
这些库提供了丰富的图形界面组件和接口,方便开发人员快速构建图形界面应用程序。
2. 使用Windows API对于Windows平台下的软件开发,可以使用Windows API来实现图形界面。
Windows API提供了一系列函数和数据类型,可以方便地创建窗口、按钮、菜单等图形界面组件。
3. 使用OpenGL如果需要在图形界面中展示3D图形,可以使用OpenGL库来实现。
OpenGL是一种跨平台的图形库,可以实现高性能的3D图形渲染。
三、示例代码下面是一个简单的示例代码,演示了如何使用C语言和GTK库实现一个简单的图形界面:```c#include <gtk/gtk.h>int main(int argc, char *argv[]){GtkWidget *window;gtk_init(&argc, &argv);window = gtk_window_new(GTK_WINDOW_TOPLEVEL);g_signal_connect(window, "destroy",G_CALLBACK(gtk_main_quit), NULL);gtk_widget_show(window);gtk_main();return 0;}```四、总结通过以上介绍,我们了解了使用C语言实现图形界面的基本方法和示例代码。
c 画图程序课程设计一、课程目标知识目标:1. 学生能理解并掌握c语言中画图程序的基本概念和原理;2. 学生能够运用c语言的基本语法,编写简单的画图程序;3. 学生能够了解并使用c语言中的图形库,实现基本的图形绘制。
技能目标:1. 学生能够独立完成画图程序的编写和调试;2. 学生能够运用逻辑思维和问题解决能力,设计并实现简单的图形组合;3. 学生能够通过编写画图程序,提高编程实践能力和创新思维能力。
情感态度价值观目标:1. 学生对c语言编程产生兴趣,树立编程学习的自信心;2. 学生在编程实践中,培养团队合作精神和解决问题的耐心;3. 学生通过画图程序的创作,体验计算机编程的乐趣,提高对信息技术的认识。
课程性质:本课程为信息技术学科,以实践操作为主,注重培养学生的编程能力和逻辑思维能力。
学生特点:六年级学生,具备一定的计算机操作能力和c语言基础,对图形绘制感兴趣,喜欢动手实践。
教学要求:结合学生特点,注重理论与实践相结合,提高学生的编程技能和创新能力。
在教学过程中,关注学生的个体差异,给予个性化指导,确保每个学生都能达到课程目标。
通过课程学习,使学生能够独立完成简单的画图程序,为后续学习奠定基础。
二、教学内容1. c语言画图程序基本概念:介绍画图程序的概念,图形坐标系、图形库的调用方法;2. c语言基本语法复习:回顾变量、数据类型、运算符、控制语句等基本知识;3. 图形绘制函数:讲解并练习常用的图形绘制函数,如画点、画线、画圆等;4. 综合图形绘制:结合所学知识,设计并实现简单的组合图形;5. 画图程序实例分析:分析教材中的典型画图程序实例,讲解其编程思路和技巧;6. 创新设计:鼓励学生发挥创意,设计并实现自己的画图作品;7. 程序调试与优化:教授程序调试的方法,引导学生发现并解决编程过程中的问题。
教学大纲安排:第一课时:回顾c语言基本语法,介绍画图程序基本概念;第二课时:学习图形绘制函数,进行简单的图形绘制练习;第三课时:分析教材中的画图程序实例,讲解编程技巧;第四课时:综合运用所学知识,设计并实现组合图形;第五课时:创新设计,展示与分享学生的画图作品;第六课时:程序调试与优化,提高画图程序的运行效果。
包头师范学院本科学年论文论文题目:基于VC++MFC程序设计——简易画图板院系:信息科学与技术学院专业:计算机科学与技术学号:姓名:指导教师:撰写学年:2010至2011学年二零一零年十二月摘要本软件是利用VC++这个强大的可视化编程工具开发的,软件主要功能包括图形的绘制、线型的设置、颜色的设置,图形文件的重绘和保存等功能。
本文介绍了如何完成上述功能,同时详细阐述了画图系统的实现过程以及对画图系统所做的功能扩充。
在画图软件设计上,其主要任务是:实现“绘制图形”、“图形的保存”两项功能。
本软件具有实用性、稳定性、易用性,和可维护性的特点,应该说它应是一个开放性的软件,用户可以根据需要对其功能进行扩充、完善与修改,使其符合自己的要求。
总之,本软件是一个逐步完善的软件。
关键词:VC++;MFC;绘图AbstractThis software is using vc + + this powerful visual programming tool development, software main functions including graphics rendering, linetype Settings, color setting, graphics file redraw of preserving and function.The paper introduced how to accomplish these functions, and explains in detail drawing system realization process and to drawing system do function expansion. In drawing software design, its main task is to achieve "drawings", "graphic save" two functions.This software has practicability, stability, ease-of-use, and maintainability characteristic, should say it should be an open software, the user can according to the needs of its functions were expansion, perfect and modification, make them comply with their requirements. Anyhow, this software is a perfect gradually software.Key words:Vc + +; MFC; drawing目录引言 (1)第1章vc++6.0和MFC简介 (2)1.1 vc++6.0简介 (2)1.2 MFC简介 (2)第2章基础知识 (2)2.1工程的新建 (3)2.2单文档简介 (4)2.3添加消息响应函数 (5)2.4资源 (5)2.5设备环境 (6)第3章简易画图板的制作 (6)3.1设计目的 (6)3.2 总体设计 (7)3.3详细设计 (8)3.3.1点、直线、矩形、椭圆的绘制 (10)3.3.2连续线和扇形的绘制 (12)3.3.3画刷 (14)3.3.4设置对话框 (16)3.3.5颜色 (17)3.3.6打开与保存 (17)第4章结果及结论 (18)4.1运行结果 (18)4.2结论 (20)参考文献 (22)附录:简易画图板主要程序代码 (23)致谢 (33)引言计算机技术的发展,使人类社会进入了信息化和自动化,计算机智能识别也随着计算机的发展得到了迅速的发展。
... . .Foshan University课程设计说明书操作系统课程和设计学院:电子与信息工程学院专业:2012网络工程2学号:学生:二〇一五年七月课程设计任务书专业级班一、设计题目:操作系统图形显示程序接口设计二、主要容:本设计的目的是通过设计一些简单的中断调用接口,使学生掌握程序接口的设计方法。
要求在熟悉DOS操作系统的中断接口及程序接口的基础上,利用C语言设计简单的显示程序接口,最后通过程序验证全部接口的正确性。
三、具体要求利用C语言设计DOS中断中21H与图形操作相关的中断调用,具体包括:1、设置点阵图形的彩色2、画点3、画线4、画矩形5、画圆6、屏幕区域填充7、屏幕区域保存8、屏幕区域逻辑恢复9、清除屏幕/区域10、屏幕区域卷动11、鼠标控制12、多窗口功能上述功能由两部分程序验证,中断驻留程序和验证程序。
首先运行中断驻留程序,然后运行验证程序得到预期结果。
四、进度安排1-2天:资料查找、系统分析,数据流程分析,概要设计1-2天:系统详细设计、功能设计5-6天:模块设计、编程调试1天:资料整理、课程设计说明书编写。
五、完成后应上交的材料1、课程设计说明书(程序流程图、功能模块图、相关数据结构、核心算法等)2、相关源程序文件六、总评成绩指导教师签名日期年月日系主任审核日期年月日目录一、程序概述 (5)1.1程序任务 (5)1.2程序原理 (5)二、概念原理 (5)三、总体设计 (6)3.1设计流程图…………………………………………………... .63.2实现方法 (6)四、详细设计 (7)4.1函数使用…………………………………………………... ..7五、完成情况 (7)六、使用说明 (7)七、设计总结 (9)7.1系统特色 (9)7.2经验教训 (9)7.3实践感受 (9)参考资料 (9)附录 (10)一.程序概述1.1.程序任务本设计是要求编写一个简单的命令解释器,利用C语言、DOS中断中21H 与屏幕显示相关的中断调用进行设计的,主要完成要求中所提到的功能如:画点、画线、画圆、填充、恢复、屏幕滚动等。
C语言课程设计--计算器(图形界面)扬州大学C语言课程设计报告题目一个简易计算器的设计与实现班级学号姓名指导教师成绩老师评语:第 2 页共 14 页第 3 页共 14 页一、系统调试…………………………………………8,9,10,11二、课程设计体会总结………………………………8,9,10,111 课程设计目的(1).课程设计是一项综合性实践环节,是对平时实验的一个补充,课程设计内容包括课程的主要理论知识,但由于C语言对初学者较难掌握,因而对一个完整的C语言程序不适合平时实验。
通过课程设计可以达到综合设计C语言程序的目的。
(2)通过本课程设计,可以培养独立思考,综合运用所学有关相应知识的能力,能更好地使用C语言的知识,更好地了解C语言的好处和其可用性!掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级程序设计能力。
为后续各门计算机课程的学习和毕业设计打下坚实基础!(3)通过本程序训练程序设计的基本技能,掌握字符串的表示方法和字符串函数的功能、自学掌握四则运算的算法及WIN-TC的图形操作的基本知识、键盘上特殊键的获取及图形方式下光标的显示。
2 课程设计内容目的:本课程的课程设计要求学生模拟实现一个简单计算器,要求(1)能够实现四则运算,并能支持优先级运算。
(2)三角与反三角运算:如sinx,cosx等。
(3)指数对数运算:如log(x),lnx,e的x次方等。
(4)其他运算:如X!,x 的累加等。
(4)不允许调用库函数,使用自行开发的程序实现常用函数运算。
(5)进一步考虑计算器外观设计,用可视化界面给出计算器外观、功能按键及输入界面。
使用说明:执行加法运算,'—'表示执行减法运算,表示执行乘法运算,'/'表第 4 页共 14 页示除法运算.‘Q’表示退出计算器‘C’表示清零,’=’表示得出结果'^'表示执行x的y次方,'e'表示执行e的x次方操作,'&'表示执行累加操作.,你可以可以用键盘上的上下左右键对光标进行移动,当光标移动到计算器按键上时,按ENTER即可执行该键的操作!最后按“=”则可得出结果。
利用C语言编写简单操作系统操作系统是计算机系统中最核心的组成部分之一,它提供了各种各样的功能和服务,使得计算机能够高效地运行和管理各种应用程序。
而C语言是一种广泛应用于系统编程的高级编程语言,由于其简洁、高效和可移植性等特性,成为了编写操作系统的常用工具之一。
本文将介绍如何利用C语言编写一个简单的操作系统。
一、操作系统的基本原理和功能在开始学习如何编写操作系统之前,我们需要了解操作系统的基本原理和功能。
操作系统主要负责管理计算机的硬件和软件资源,提供各种系统调用、文件管理、进程调度等核心功能。
操作系统的设计可以分为三个层次:硬件抽象层、内核和用户空间。
硬件抽象层负责和硬件设备进行交互,内核提供系统调用等基本功能,而用户空间则为应用程序提供运行环境。
二、搭建开发环境在编写操作系统之前,我们需要搭建一个适合的开发环境。
首先,我们需要一台支持C语言编译的计算机,并安装相关的开发工具链,如gcc编译器。
其次,我们需要学会使用一些调试工具,例如gdb来调试和查看程序的执行过程。
最后,我们可以选择一些操作系统开发的教程或书籍,帮助我们更好地理解和学习操作系统的编写。
三、编写内核代码编写操作系统的关键是编写内核代码。
内核是操作系统的核心部分,负责管理系统资源、调度进程和提供系统调用等功能。
在C语言中,我们可以使用一些底层指令和系统调用来和硬件进行交互,并实现操作系统的功能。
首先,我们需要定义一些数据结构,如进程控制块(PCB),页表以及文件控制块(FCB)等。
这些数据结构可以帮助我们管理和组织系统资源。
接着,我们需要编写一些底层的函数,如中断处理函数、内存管理函数和文件系统函数等。
这些函数将被用于处理硬件中断、内存分配和文件读写等操作。
四、实现系统调度和进程管理在操作系统中,进程是系统中的一个运行中的程序。
操作系统需要负责管理和调度进程的执行。
为了实现进程管理和调度,我们需要定义和实现一些进程调度算法,并编写相应的调度函数。
C语言实现图形界面C语言作为一门广泛应用于系统编程和嵌入式开发的高级编程语言,一直以来都以其强大的性能和灵活性备受开发者的青睐。
然而,对于一些需要图形界面的应用程序来说,C语言并不是最理想的选择。
因为C语言本身并没有提供直接的图形界面库,开发者需要借助第三方库来实现图形界面的开发。
本文将介绍C语言如何借助第三方库来实现图形界面,同时探讨其中的实现原理和常见的图形界面库。
一、图形界面库的选择在C语言中实现图形界面,开发者可以选择使用多种第三方库,如GTK、Qt、SDL等。
这些库提供了各种图形控件和功能模块,使得开发者可以便捷地创建用户友好的图形界面。
选择合适的图形界面库往往基于开发者的需求和项目的特点。
下面我将介绍几个常见的图形界面库:1. GTKGTK是一种跨平台的图形库,它是用C语言编写的,因此非常适合C语言开发者。
GTK提供了丰富的控件和工具,可以用于开发桌面应用程序。
它的特点是简单易用、灵活可扩展。
GTK有一个名为GTK+的版本,是基于对象的,提供了更高级的特性和更好的抽象。
开发者可以使用GTK的API来创建GUI程序,实现用户界面与用户的交互。
2. QtQt是一种跨平台的应用程序开发框架,它提供了丰富的GUI控件和功能模块,适用于开发桌面、移动和嵌入式应用程序。
Qt可以通过QML语言来描述界面,也可以使用C++语言来编写GUI程序。
相比于其他图形界面库,Qt拥有更强大的功能和更好的性能。
3. SDLSDL是一种简单的多媒体库,它提供了2D图形、音频和输入设备的访问接口,适用于开发游戏和其他多媒体应用程序。
SDL可以通过C语言和C++语言来使用,它的优点是易学易用,同时支持跨平台开发。
二、C语言实现图形界面的原理在C语言中实现图形界面的关键在于借助第三方库提供的API来创建和管理窗口、控件等图形元素。
开发者需要了解该库的使用方法和函数接口,以便正确地调用和操作。
一般来说,实现图形界面的过程可以分为以下几个步骤:1. 初始化图形库在使用图形界面库之前,需要进行库的初始化操作。
包头师范学院本科学年论文论文题目:基于VC++MFC程序设计——简易画图板院系:信息科学与技术学院专业:计算机科学与技术学号:姓名:指导教师:撰写学年:2010至2011学年二零一零年十二月摘要本软件是利用VC++这个强大的可视化编程工具开发的,软件主要功能包括图形的绘制、线型的设置、颜色的设置,图形文件的重绘和保存等功能。
本文介绍了如何完成上述功能,同时详细阐述了画图系统的实现过程以及对画图系统所做的功能扩充。
在画图软件设计上,其主要任务是:实现“绘制图形”、“图形的保存”两项功能。
本软件具有实用性、稳定性、易用性,和可维护性的特点,应该说它应是一个开放性的软件,用户可以根据需要对其功能进行扩充、完善与修改,使其符合自己的要求。
总之,本软件是一个逐步完善的软件。
关键词:VC++;MFC;绘图AbstractThis software is using vc + + this powerful visual programming tool development, software main functions including graphics rendering, linetype Settings, color setting, graphics file redraw of preserving and function.The paper introduced how to accomplish these functions, and explains in detail drawing system realization process and to drawing system do function expansion. In drawing software design, its main task is to achieve "drawings", "graphic save" two functions.This software has practicability, stability, ease-of-use, and maintainability characteristic, should say it should be an open software, the user can according to the needs of its functions were expansion, perfect and modification, make them comply with their requirements. Anyhow, this software is a perfect gradually software.Key words:Vc + +; MFC; drawing目录引言 (1)第1章vc++6.0和MFC简介 (2)1.1 vc++6.0简介 (2)1.2 MFC简介 (2)第2章基础知识 (2)2.1工程的新建 (3)2.2单文档简介 (4)2.3添加消息响应函数 (5)2.4资源 (5)2.5设备环境 (6)第3章简易画图板的制作 (6)3.1设计目的 (6)3.2 总体设计 (7)3.3详细设计 (7)3.3.1点、直线、矩形、椭圆的绘制 (9)3.3.2连续线和扇形的绘制 (11)3.3.3画刷 (13)3.3.4设置对话框 (15)3.3.5颜色 (16)3.3.6打开与保存 (17)第4章结果及结论 (17)4.1运行结果 (17)4.2结论 (18)参考文献 (20)附录:简易画图板主要程序代码 (21)致谢 (31)引言计算机技术的发展,使人类社会进入了信息化和自动化,计算机智能识别也随着计算机的发展得到了迅速的发展。
****级通信工程VC++课程设计报告设计题目:基于MFC的绘画板姓名学号:****学院:工程技术学院专业:通信工程班级:****指导教师:****2014年**月**日题目:基于MFC的绘画板目录第1章VC++和MFC的基本介绍.1.1VC++6.0介绍 (3)1.2 MFC介绍 (4)第2章基本功能2.1创建单文档 (5)2.2添加成员变量 (6)2.3新建工具栏 (6)2.4编辑菜单 (9)2.5建立相应类向导 (10)2.6添加消息函数 (15)第3章简易画图板的制作3.1设计目的 (25)3.2详细设计 (28)3.3点、直线、矩形、椭圆的绘制 (28)3.4改变线色 (28)3.5改变线宽 (29)3.6设置填充色对话框 (29)3.7绘制图形 (29)第4章结果及结论4.1测试结果 (30)4.2参考文献 (31)4.3心得体会 (31)4.4关键源代码 (32)第1章1.1VC++6.0介绍:Visual C++ 6.0,简称VC或者VC6.0,是微软推出的一款C++编译器,将“高级语言”翻译为“机器语言(低级语言)”的程序。
Visual C++是一个功能强大的可视化软件开发工具。
自1993年Microsoft公司推出Visual C++1.0后,随着其新版本的不断问世,Visual C++已成为专业程序员进行软件开发的首选工具。
虽然微软公司推出了Visual C++.NET(Visual C++7.0),但它的应用的很大的局限性,只适用于Windows 2000、Windows XP和Windows NT4.0。
所以实际中,更多的是以Visual C++6.0为平台。
VC++6.0Visual C++6.0不仅是一个C++ 编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。
Visual C++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。
c 课程设计画图板一、课程目标知识目标:1. 学生能理解画图板的基本功能,掌握画图板的使用方法。
2. 学生能运用画图板的相关工具进行基本的图形绘制和编辑。
3. 学生能够结合数学知识,运用画图板解决几何问题,如绘制图形、计算周长和面积等。
技能目标:1. 学生能够熟练操作画图板,运用各种工具进行绘画和编辑。
2. 学生能够运用画图板进行创新设计,培养空间想象力和创造力。
3. 学生能够通过画图板与同学进行协作交流,提高团队协作能力。
情感态度价值观目标:1. 学生在画图板的学习过程中,培养对信息技术的兴趣和热情,提高学习积极性。
2. 学生能够认识到画图板在日常生活和学习中的实用性,增强实际应用意识。
3. 学生在合作学习中,学会尊重他人,培养良好的团队精神和沟通能力。
课程性质:本课程为信息技术与数学学科融合课程,以实践操作为主,注重培养学生的动手能力和创新能力。
学生特点:六年级学生具备一定的信息技术基础和数学知识,好奇心强,喜欢动手操作,善于合作交流。
教学要求:结合学生特点,课程设计要注重实践性、趣味性和互动性,充分调动学生的积极性,培养其运用画图板解决实际问题的能力。
在教学过程中,关注学生的个体差异,鼓励学生主动探索、创新实践,确保课程目标的达成。
后续教学设计和评估将围绕课程目标进行,以实现具体学习成果的分解和落实。
二、教学内容1. 画图板基本功能介绍:认识画图板界面,了解工具箱、调色板、绘图区域等功能区。
相关教材章节:课本第三章第二节《认识画图板》2. 基本绘图操作:学习使用画图板工具进行直线、曲线、矩形、椭圆等基本图形绘制。
相关教材章节:课本第三章第三节《基本绘图操作》3. 图形编辑与修改:掌握选定、移动、复制、删除、旋转、翻转等图形编辑方法。
相关教材章节:课本第三章第四节《图形编辑与修改》4. 颜色填充与线条设置:学习调整线条颜色、粗细、样式以及填充图形颜色。
相关教材章节:课本第三章第五节《颜色填充与线条设置》5. 画图板在数学中的应用:运用画图板绘制几何图形,解决实际问题,如计算周长、面积等。
c 操作系统课程设计报告一、课程目标知识目标:1. 理解操作系统的基本概念,掌握操作系统的功能和作用;2. 学习C语言在操作系统中的应用,理解操作系统核心模块的实现原理;3. 掌握进程管理、内存管理、文件系统等基本知识,了解其与C语言编程的关联。
技能目标:1. 能够运用C语言编写简单的操作系统程序,如进程调度、内存分配等;2. 学会分析操作系统的性能,提出优化方案,并运用C语言进行改进;3. 培养学生的动手实践能力,能够独立完成一个小型操作系统的设计与实现。
情感态度价值观目标:1. 培养学生对计算机操作系统的兴趣,激发学习热情,形成主动学习的习惯;2. 培养学生的团队合作意识,学会与他人共同解决问题,提高沟通与协作能力;3. 培养学生的创新精神,鼓励学生勇于尝试,敢于突破,培养解决复杂问题的信心。
本课程针对高年级学生,课程性质为理论与实践相结合。
根据学生的知识水平,课程目标具体、可衡量,旨在帮助学生深入理解操作系统原理,提高C语言编程能力,培养实际操作与解决问题的技能。
课程目标分解为具体学习成果,便于后续教学设计和评估。
在教学过程中,注重启发式教学,引导学生主动探索,提高学生的实践能力和创新能力。
二、教学内容1. 操作系统基本概念:介绍操作系统的定义、功能、发展历程及分类;教材章节:第1章 操作系统概述2. 进程管理:讲解进程与线程的概念、进程调度算法、进程同步与互斥;教材章节:第2章 进程管理3. 内存管理:介绍内存分配策略、虚拟内存技术、页面置换算法;教材章节:第3章 内存管理4. 文件系统:讲解文件和目录结构、文件存储与访问控制、文件系统性能优化;教材章节:第4章 文件系统5. C语言在操作系统中的应用:分析C语言在操作系统编程中的优势,举例说明;教材章节:第5章 操作系统编程6. 操作系统性能分析与优化:介绍性能评价方法,分析操作系统性能瓶颈,提出优化方案;教材章节:第6章 操作系统性能分析与优化7. 课程实践:设计小型操作系统模块,如进程调度、内存分配等,运用C语言实现;教材章节:第7章 操作系统课程实践教学内容安排和进度:本课程共16课时,教学内容按照以上大纲进行安排,每部分内容分配2-3课时,最后4课时用于课程实践。
c 操作系统课程设计一、课程目标知识目标:1. 理解操作系统的基本概念,掌握操作系统的功能和结构;2. 学习C语言在操作系统编程中的应用,熟悉常用的数据结构和算法;3. 掌握进程管理、内存管理、文件系统等操作系统的核心模块原理及实现方法;4. 了解操作系统在计算机系统中的作用,提高对计算机系统整体认识。
技能目标:1. 能够使用C语言编写简单的操作系统程序,如进程调度、内存分配等;2. 学会分析操作系统性能,优化程序,提高系统运行效率;3. 掌握操作系统调试和测试方法,具备一定的系统故障排查能力;4. 培养团队合作能力,学会在项目中进行有效沟通和协作。
情感态度价值观目标:1. 培养学生对操作系统课程的学习兴趣,激发探究操作系统的热情;2. 增强学生的计算思维和问题解决能力,培养创新意识和实践能力;3. 培养学生的责任心和使命感,使其认识到操作系统在国家安全、社会发展中的重要作用;4. 引导学生树立正确的价值观,认识到技术发展对社会进步的推动作用。
课程性质:本课程为计算机科学与技术专业的核心课程,旨在让学生掌握操作系统的基本原理和实现方法,培养具备实际编程能力的专业人才。
学生特点:学生已经具备一定的C语言基础,对计算机系统有一定了解,但可能缺乏实际项目经验。
教学要求:结合学生特点,注重理论与实践相结合,通过课程设计提高学生的动手能力和解决问题的能力。
同时,关注学生的情感态度价值观培养,激发学生的学习兴趣和责任感。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 操作系统概述:介绍操作系统的基本概念、功能和目标,使学生了解操作系统的地位和作用。
教材章节:第一章 操作系统概述2. 进程管理:讲解进程与线程的概念、进程调度算法、进程同步互斥、死锁与饥饿等。
教材章节:第二章 进程管理3. 内存管理:介绍内存分配策略、虚拟内存技术、页面置换算法等。
教材章节:第三章 内存管理4. 文件系统:讲解文件和目录结构、文件存储与访问控制、磁盘空间分配策略等。
课程设计报告课程设计题目:简单绘图板学生姓名:余勇专业:数字媒体技术班级:1122202指导教师:李祥2013年01 月12 日东华理工大学VC++课程设计设计目的:(1)要求学生达到熟练掌握C++语言的基本知识和技能;(2)基本掌握面向对象程序设计的基本思路和方法;(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
设计要求:(1)要求利用面向对象的方法以及C++的编程思想来完成系统的系统结构;(2)要求在设计的过程中,建立清晰的UML类关系图,描述出类族之间的关系;(3)在系统中定义的每个类中要有各自的属性和方法;(4)在系统的设计中,要用到面向对象的封装、继承和派生、多态的属性。
设计选题:简单绘图板要求:(1)程序中包含菜单项和工具栏;(2)先选择菜单项或单击工具栏上的命令按钮,然后在窗体空白区域单击鼠标后,绘制相应菜单项或命令按钮指定的图形、文字。
设计思路:问题分析:绘图板需要创建一个用户界面,然后用户界面中需要有菜单栏和工具栏进行不同的操作选择。
在菜单栏中能指定不同的基本图形进行绘制。
设计一个单文档类型的MFC AppWizard (exe)工程,工程取名为:绘图板。
此程序将实现简单的绘图功能,包括点、直线、矩形、椭圆、扇形和连续线的绘制。
并且能实现绘图的控制,包括线宽、线型和颜色的设置,图形的保存和打开设计图:结构分析: 首先,新建一个单文档类型的MFC AppWizard (exe)工程,工程取名为:Graphic 。
为此程序添加一个子菜单,菜单名称为“绘图”,并为其添加六个菜单项,分别用来控制不同图形的绘制。
当用户选择其中的一个菜单项后,程序将按照当前的选择进行相应图形的绘制。
添加的六个菜单项的ID 。
然后分别为这六个菜单项添加命令响应,本程序让视类(CGraphicView)对这些菜单命令进行响应,在程序运行以后,当用户单击某个菜单项时,应该把用户的选择保存起来,以便随后的绘图操作使用。
使用C语言实现简单的操作系统C语言是一种广泛应用的高级编程语言,拥有较高的可移植性和灵活性。
通过使用C语言,我们可以实现各种程序和系统,包括操作系统。
本文将介绍如何使用C语言实现一个简单的操作系统。
操作系统是计算机的核心组成部分,它管理计算机的硬件和软件资源,并提供给用户一个友好、高效的接口。
一个操作系统通常由内核和外壳组成,其中内核负责处理硬件资源的管理,外壳则提供给用户一个可交互的界面。
在实现一个简单的操作系统之前,我们需要了解一些操作系统的基本概念和原理。
首先,操作系统需要能够加载到计算机的内存中,并将控制权交给它,这一般是通过引导扇区(boot sector)来实现的。
引导扇区是位于磁盘的第一个扇区,它包含了一个小程序,负责将操作系统的其他部分加载到内存中。
在引导扇区加载完成后,操作系统的其他部分会被加载到内存中的特定位置。
这些部分包括内核和外壳。
内核是操作系统的核心组件,负责管理硬件资源,如处理器、内存和设备等。
外壳是用户与操作系统交互的接口,它可以提供命令行界面或图形用户界面(GUI)。
接下来,我们将使用C语言来实现一个简单的操作系统。
首先,我们需要定义一些数据结构和函数来实现所需的功能。
例如,我们可以定义一个结构体来表示进程(process),其中包含进程的ID、状态、优先级和内存分配等信息。
然后,我们可以编写相应的函数来创建、终止和调度进程。
除了进程管理,我们还需要考虑内存管理、文件系统和设备驱动程序等方面。
对于内存管理,我们可以定义一些函数来管理内存的分配和释放,以及处理内存碎片化问题。
对于文件系统,我们可以定义一些函数来创建、读取和写入文件。
对于设备驱动程序,我们可以编写相应的函数来处理设备的读写和中断等操作。
最后,我们需要编写一个引导扇区程序,将操作系统的其他部分加载到内存中,并将控制权交给操作系统。
引导扇区程序可以使用汇编语言来编写,以便直接控制硬件。
在编写完成所有必要的代码后,我们可以使用相关的编译器将C代码编译成可执行文件。
C++课程设计之画图板程序第一部分创建MFC应用程序首先,打开VS2010,新建工程文件,文件名设置为DrawingBoard.cpp。
设置应用程序类型为单个文档,完成创建,如图1。
图1 新建工程文件在资源视图中,打开Menu选项卡,选择IDR_MAINFRAME,创建一个名为绘图的文件选项。
图2 创建文件选项第二部分实现绘图功能同样的,在绘图选项的下拉菜单中我们创建三个不同的选项名,即:点、线、矩形、椭圆,并分别设置它们的ID为IDM_DOT,IDM_LINE,IDM_RECTANGLE,IDM_ELLAPSE。
如下图:图3 创建下拉菜单选项接下来我们为点这一菜单项在CDrawingBoardView类中添加事件处理程序,如图:图4 为菜单项(点)创建事件处理程序同理,为线、矩形和椭圆添加事件处理程序并编辑它们的代码,如下图:图5 编译事件处理程序代码在CDrawingBoardView类中添加成员变量,变量名设置为m_nDrawType,变量类型为UINT,访问为private。
如下图:图6 创建成员变量m_nDrawType随后,在CDrawingBoardView()函数中为刚定义好的变量初始化,设置为0。
变量m_nDrawType的作用在于,供给用户选择绘制的图形类型(点、线、矩形和椭圆)。
在刚才设置好的响应函数分别设置该变量的值,m_nDrawType=1表示为点、m_nDrawType=2表示为线、m_nDrawType=3表示为矩形、m_nDrawType=4表示为椭圆。
如下:图7 设定m_nDrawType在不同响应函数中的值在在CDrawingBoardView类中添加成员变量,变量名设置为m_ptOrigin,变量类型为UINT,访问为private,并将其初始化为0。
这个变量用于存储光标的起始点。
如下图:图8 初始化成员变量m_ptOrigin打开类向导,在类CDrawingBoardView中添加鼠标左键按下和松开的消息响应函数。
... . .Foshan University课程设计说明书操作系统课程和设计学院:电子与信息工程学院专业:2012网络工程2学号:学生:二〇一五年七月课程设计任务书专业级班一、设计题目:操作系统图形显示程序接口设计二、主要容:本设计的目的是通过设计一些简单的中断调用接口,使学生掌握程序接口的设计方法。
要求在熟悉DOS操作系统的中断接口及程序接口的基础上,利用C语言设计简单的显示程序接口,最后通过程序验证全部接口的正确性。
三、具体要求利用C语言设计DOS中断中21H与图形操作相关的中断调用,具体包括:1、设置点阵图形的彩色2、画点3、画线4、画矩形5、画圆6、屏幕区域填充7、屏幕区域保存8、屏幕区域逻辑恢复9、清除屏幕/区域10、屏幕区域卷动11、鼠标控制12、多窗口功能上述功能由两部分程序验证,中断驻留程序和验证程序。
首先运行中断驻留程序,然后运行验证程序得到预期结果。
四、进度安排1-2天:资料查找、系统分析,数据流程分析,概要设计1-2天:系统详细设计、功能设计5-6天:模块设计、编程调试1天:资料整理、课程设计说明书编写。
五、完成后应上交的材料1、课程设计说明书(程序流程图、功能模块图、相关数据结构、核心算法等)2、相关源程序文件六、总评成绩指导教师签名日期年月日系主任审核日期年月日目录一、程序概述 (5)1.1程序任务 (5)1.2程序原理 (5)二、概念原理 (5)三、总体设计 (6)3.1设计流程图…………………………………………………... .63.2实现方法 (6)四、详细设计 (7)4.1函数使用…………………………………………………... ..7五、完成情况 (7)六、使用说明 (7)七、设计总结 (9)7.1系统特色 (9)7.2经验教训 (9)7.3实践感受 (9)参考资料 (9)附录 (10)一.程序概述1.1.程序任务本设计是要求编写一个简单的命令解释器,利用C语言、DOS中断中21H 与屏幕显示相关的中断调用进行设计的,主要完成要求中所提到的功能如:画点、画线、画圆、填充、恢复、屏幕滚动等。
1.2.程序原理设计过程中发现使用C语言进行图形操作如果使用传统的功能菜单和接口选项,会使功能无法衔接,模块化感严重,功能使用不连续的问题,用户体验非常低。
所以经过思考了查阅资料后,改用单面板上,鼠标控制输入的办法实现功能,鼠标的控制使用已经包含了中断机制,所以不用特意添加其他功能模块的中断。
使用鼠标位置追踪函数,建立int 33h中断功能调用组,随时获取鼠标位置以及功能选择。
GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标),调用ScreenToClient(hwnd, &point) ; // 将鼠标指针位置转换为窗口坐标,最后再检测鼠标按下左键的状态,调用函数GetAsyncKeyState(VK_LBUTTON)。
二.概念原理2.1中断中断:顾名思义,是指当出现需要时,CPU暂时停止当前程序的执行而执行处理新情况的程序和执行过程。
即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。
2.2 图形显示程序接口图形显示接口(GDI)提供了一系列的函数和相关的结构,应用程序可以使用它们在显示器、打印机或其他设备上生成图形化的输出结果。
使用GDI函数可以绘制直线、曲线、闭合图形、路径、文本以及位图图像。
所绘制的图形的颜色和风格依赖于所创建的绘图对象,即画笔、笔刷和字体。
你可以使用画笔来绘制直线和曲线,使用笔刷来填充闭合图形的部,使用字体来书写文本。
2.3. 中断驻留程序中断驻留程序,指的是当加载进存的程序执行完毕后,依然能够保存产生的临时数据跟临时状态,而在下一次调用时继续执行。
2.4. 系统调用系统调用,顾名思义,说的是操作系统提供给用户程序调用的一组“特殊”接口。
用户程序可以通过这组“特殊”接口来获得操作系统核提供的服务,比如用户可以通过文件系统相关的调用请求系统打开文件、关闭文件或读写文件,可以通过时钟相关的系统调用获得系统时间或设置定时器等。
从逻辑上来说,系统调用可被看成是一个核与用户空间程序交互的接口,它好比一个中间人,把用户进程的请求传达给核,待核把请求处理完毕后再将处理结果送回给用户空间。
三.总体设计3.2实现方法使用GetCursorPos(&point);函数获取鼠标指针位置(屏幕坐标),随时获取鼠标位置以及功能选择。
调用ScreenToClient(hwnd, &point) ; // 将鼠标指针位置转换为窗口坐标,调用函数GetAsyncKeyState(VK_LBUTTON),检测鼠标按下左键的状态,根据鼠标状态选择功能并输出。
四.详细设计4.1函数使用Show()输出功能面板边框以及调色板色块GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)ScreenToClient(hwnd, &point); // 将鼠标指针位置转换为窗口坐标Line() 画线函数Bar() 画条函数Rectangle()画矩形函数Circle()画圆函数Setfillstyle() 设置填充图样和颜色函数Getimage() 保存图像函数Putimage() 输出图像函数Cleardevice();刷新屏幕五.完成情况本程序完成了其中的选择颜色,设置点阵图形的彩色,画点,画线,画矩形,画圆,屏幕区域填充,屏幕区域保存,屏幕区域逻辑恢复,清除屏幕/区域,鼠标控制,多窗口功能。
屏幕卷动功能尚未实现,但大部分及主要功能都已实现,并不影响使用,部分功能存在BUG,使用时需遵循一定使用方法,有待改善。
六.使用说明左边工具栏按顺序为1、画曲线2、画直线3、画矩形4、画圆5、封闭区域颜色填充6、保存画面到文件7、清屏8、撤销一步操作9、恢复之前保存的文件到画面上底部为调色板,点击选色七.设计总结7.1系统特色本系统使用单页面操作,比起传统的DOS界面操作的选项菜单来说,更加便利以及直观,可以在同一窗口看到多次操作的结果,用户体验更好,而且全程鼠标控制,直观的菜单栏都是本软件亮点。
7.2经验教训本次课程设计一开始,我使用的是传统的选择菜单模式实现功能,每个功能都需要经过一次选择和退出才能执行下一个功能,没有连贯性,并不符合我们本次任务的画板功能,经过与同学的讨论分析后,我们才决定重新开始,更改界面,这告诉我们要摆脱定势思维,因为我们习惯于作选项接口,就忘了分析。
做项目之前应先分析清楚,所需要的方法及功能再开始程序设计,而不应该使用老方法,直接开始。
7.3实验感受本次课程设计让我对C语言的感悟更加深了一层,曾经以为C语言有许多功能都无法实现,但当开始课程设计并查找资料都发现,C语言功能强大而且深奥,之前所学习的东西可以说是沧海一粟,是在拿不出手,经过了大量翻阅C 语言高级教程后,才有所了解。
数据结构与操作系统知识也是不可或缺,作为本次设计的核心,操作系统的中断功能又花费了我们大量的时间来理解,然后用C 语言实现,又一次锻炼了我的编码功能,在做后退功能的时候,需要用到栈结构来保存之前多部操作,但是实现了栈之后,却无法实现类类型入栈,所以最终只能做出单步恢复的功能,还是有待改进。
本次课程设计让我加深了,软件设计的整个流程以及对语言的熟悉程度,为以后打下坚实基础。
参考资料1、《计算机操作系统教程》(第2版)尧学史美林编著清华大学2、《操作系统实验指导》任爱华鹏方毅清华大学3、《操作系统实验教程——核心技术与编程实例》顾宝根王立松顾喜梅科学4、《C++编程思想》Bruck 著侯捷译机械工业5、《C 语言程序中清除键盘缓冲区的方法》长虹职业技术学院学报附录#include<ctype.h>#include <graphics.h>#include <stdio.h>#include<math.h>void main(){void show();IMAGE img;initgraph(1000, 680); // 初始化绘图窗口HWND hwnd = GetHWnd(); // 获取绘图窗口句柄POINT point;setfillcolor(LIGHTGRAY);show();int x1,y1,a=0,p,color;char s[]="SAVE";char seban[]="调色板";char t[]="FULL";char c[]="CLEAR";char b[]="BACK";char r[]="RETURN";outtextxy(15,220,t);outtextxy(10,635,seban);outtextxy(15,270,s);outtextxy(10,320,c);outtextxy(15,380,b);outtextxy(3,430,r);while(true){GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)ScreenToClient(hwnd, &point); // 将鼠标指针位置转换为窗口坐标if(GetAsyncKeyState(VK_LBUTTON)){ if(point.y>630){setcolor(getpixel(point.x,point.y));color=getpixel(point.x,point.y);}if(point.x<60){if(point.y>0&&point.y<=50)//曲线a=0;if(point.y>50&&point.y<=100)//直线a=1;if(point.y>100&&point.y<=150)//矩形a=2;if(point.y>150&&point.y<=200)//圆a=3;if(point.y>200&&point.y<=250)//fulla=4;if(point.y>300&&point.y<=350)//刷新屏幕,重新输出所有{getimage(&img,60,0,1000,610);cleardevice();show();outtextxy(10,320,c);outtextxy(15,270,s);outtextxy(15,220,t);outtextxy(10,635,seban);outtextxy(15,380,b);outtextxy(3,430,r);}if(point.y>250&&point.y<=300)//保存{getimage(&img,60,0,1000,610);saveimage("E:\\test.jpg");HWND hwnd = GetHWnd();MessageBox(hwnd, _T("已保存到E:\\text.jpg!"),_T("save"), MB_OK) ;}if(point.y>350&&point.y<=400)//后退a=5;if(point.y>400&&point.y<=450)//恢复到文件容a=6;}while(1){x1=point.x;y1=point.y;if(a==0) //曲线{getimage(&img,60,0,1000,610);GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)ScreenToClient(hwnd, &point); // 将鼠标指针位置转换为窗口坐标line(x1,y1,point.x,point.y);if(!GetAsyncKeyState(VK_LBUTTON))break;}if(a==2)//矩形{if(!GetAsyncKeyState(VK_LBUTTON)){getimage(&img,60,0,1000,610);GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)ScreenToClient(hwnd, &point); // 将鼠标指针位置转换为窗口坐标line(x1,y1,point.x,y1);line(x1,y1,x1,point.y);line(x1,point.y,point.x,point.y);line(point.x,y1,point.x,point.y);break;}}if(a==1)//直线{if(!GetAsyncKeyState(VK_LBUTTON)){getimage(&img,60,0,1000,610);GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)ScreenToClient(hwnd, &point); // 将鼠标指针位置转换为窗口坐标line(x1,y1,point.x,point.y);break;}}if(a==3)//圆{if(!GetAsyncKeyState(VK_LBUTTON)){getimage(&img,60,0,1000,610);GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)ScreenToClient(hwnd, &point); // 将鼠标指针位置转换为窗口坐标far circle(x1, y1,(int)sqrt((point.x-x1)*(point.x-x1)+(point.y-y1)*(point.y-y1)));break;}}if(a==4)//full{if(!GetAsyncKeyState(VK_LBUTTON)){getimage(&img,60,0,1000,610);GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)ScreenToClient(hwnd, &point); // 将鼠标指针位置转换为窗口坐标setfillcolor(color);setfillstyle(BS_SOLID);floodfill(point.x,point.y, BLACK);break;}}if(a==5)//后退{ putimage(60, 0, &img);break;}if(a==6)//文件恢复{loadimage(&img, "E:\\test.jpg");putimage(0,0, &img);break;}}}}}void show(){far floodfill(1,1,BLUE);setbkmode(TRANSPARENT);//背景模式。