课程设计报告
学院、系:吉林大学珠海学院计算机科学与技术系专业名称:网络工程
课程设计科目VC++程序课程设计学生姓名:王佳
指导教师:张荣高
完成时间:2010年9月-11月
横向绘制余弦曲线
一、设计任务与目标
在屏幕上用‘*‘横向显示0~360度的cos(x)曲线。
此题关键在于余弦曲线在0~360度的范围内,一行要显示两个点。考虑到cos的对称性,将屏幕的行方向定义为x,列方向定义为y,则0~180度的图形是左右对称的。若将图形的总宽度定义为62列,计算出x行0~180度时y点的坐标m,那么在同一行与之对称的180~360度的y点的坐标就应为62-m。程序中利用反余弦函数acos计算坐标(x,y)的对应关系。
二、方案设计与论证
此题是在屏幕上用‘*‘横向显示0~360度的cos(x)曲线,而它的关键在于余弦曲线在0~360度的范围内,一行要显示两个点。因此,利用余弦(cos)的对称性,将屏幕的行方向定义为x,列方向定义为y,则0~180度的图形是左右对称的。若将图形的总宽度定义为62列,计算出x行0~180度时y点的坐标m,那么在同一行与之对称的180~360度的y点的坐标就应为62-m。程序中利用反余弦函数acos计算坐标(x,y)的对应关系。
在此程序设计中,该函数的核心部分是【1、for(y=1;y>=-1;y-=0.1)//y为列方向,值从1到-1(余弦的值cos[-1--1]),步长为0.1。 2、m=acos(y)*10;//计算出y对应的弧度m,乘以10为图形放大倍数。3、for(x=1;x 三、程序框图或流程图,程序清单与调用关系 四、全部源程序清单 /*横向绘制余弦曲线 在屏幕上用‘*‘横向显示0~360度的cos(x)曲线。此题关键在于余弦曲线在0~360度的范围内,一行要显示两个点。考虑到cos的对称性,将屏幕的行方向定义为x,列方向定义为y,则0~180度的图形是左右对称的。若将图形的总宽度定义为62列,计算出x行0~180度时y点的坐标m,那么在同一行与之对称的180~360度的y点的坐标就应为62-m。程序中利用反余弦函数acos 计算坐标(x,y)的对应关系。*/ #include #include void main() { double y; //y对应的弧度为m int x,m; //定义行方向为x,列方向为y for(y=1;y>=-1;y-=0.1) //y为列方向,值从1到-1,步长为0.1 { m=acos(y)*10; //用反余弦计算出y对应的坐标m,乘以10为图形放大倍数 for(x=1;x cout<<" "; //其它处打印空白 cout<<"*"; //控制打印左侧的 * 号 for(;x<62-m;x++)cout<<" ";//根据cos的对称性,y点的坐标就应为62- m,180~360度对应的图形 cout<<"*\n"; //控制打印同一行中对称的右侧*号 } } 五、程序运行的测试与分析 用‘*‘横向显示0~360度的cos(x)曲线。将屏幕的行方向定义为x,列方向定义为y,则0~180度的图形是左右对称的。 六、结论与心得 根据C++课程所学的概念、理论和方法,按照C++程序设计的基本步骤,设计出一个适当规模的程序;进一步加深对C++语言的理解和掌握。理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力。我们编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我们在编程,必须不断改进,才能更好提高编程能力。 课程设计是一项复杂的工作,在程序设计的过程中,许多我们认为应该是正确的代码,往往不能运行我们想要的结果。这就需要我们的耐心与细心,去纠正任何一个可能的细小错误。此次c++课程设计,在指导教师的精心教导下,我们学会了如何用C++编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。计算机是一台聪明又笨拙的机器,只有我们的代码完全正确时,它才能准确地运行。 通过这次课程设计,我将所学到的知识运用到了实践中,在以后的学习中,我可以自己编写一些简单的程序,将学到的东西加以实际的运用。 七、参考资料 参考书籍: 《面向对象程序设计 Visual C++》(清华大学出版社刘赋王忠编著)《C语言程序设计》(清华大学出版社谭浩强著) 参考网站:https://www.doczj.com/doc/0918477102.html, 八、致谢 衷心感谢《面向对象程序设计 Visual C++》编著刘赋王忠 《C语言程序设计》编著谭浩强 衷心感谢 https://www.doczj.com/doc/0918477102.html, 课程设计成绩评定表 制定人:单缅审定人: