- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课程设计--计算器(图形界面)
扬 州 大 学
………………………………………………1
程序设计内容:………………………………………………1
课程设计所补充的内容:补充的函数或算法…………3,4
系统总体设计………………………………………………….4
系统详细设计………………………………………5,6,7,8
运行结果………………………………………………8,9,10
系统调试…………………………………………8,9,10,11
课程设计体会总结………………………………8,9,10,11
1 课程设计目的
(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)进一步考虑计算器外观设计,用可视化界面给出计算器外观、功能按键及输入界面。
使用说明:执行加法运算,—表示执行减法运算,表示执行乘法运算,/表示除法运算.‘Q’表示退出计算器‘C’表示清零,’=’表示得出结果^表示执行x的y次方,e表示执行e的x次方操作,表示执行累加操作.,你可以可以用键盘上的上下左右键对光标进行移动,当光标移动到计算器按键上时,按ENTER即可执行该键的操作!最后按“=”则可得出结果。
3 课题设计的补充知识
本程序通过int specialkey(void)和#includeconio.h来实现对屏幕的操作,通过调用int arrow()函数,int specialkey(void)和#includeconio.h来实现对光标的操作。计算机图形采用Turbo C 2.0绘图程序制作。 因此涉及C的图形程序设计知识。此外,由于不允许调用库函数,则要自行开发程序实现sinx,cosx,e的x次方函数运算,则可以根据幂级数的展开式来设计实现其运算的算法,而x的阶乘和x的累加则可用for语句来实现。
最后,不得不说说四则运算的算法,有两种方法可以实现:(1)利用堆栈实现四则运算(2)还可以用递归整数的四则运算。
sinx函数
#includestdio.h
#includemath.h
main()
{
int n=1;
float x;
double sum ,term;
printf(input x:);
scanf(%f,x);
sum=x;
term=x;
do
{
term=-term*x*x/((n+1)*(n+2));
sum=sum+term;
n=n+2;
}
while (fabs(term)=1e-5);
printf(sin(x)=%f ,sum);
getch();
}
cosx函数
#includestdio.h
#includemath.h
main()
{
int n=0;
float x;
double sum ,term;
printf(input x:);
scanf(%f,x);
sum=1;
term=x;
do
{
term=-term*x*x/((n+1)*(n+2));
sum=sum+term;
n=n+2;
}
while (fabs(term)=1e-5);
printf(cos(x)=%f ,sum);
getch();
}
使用使只需要将其转换为函数,在computer函数中对其进行调用即可
4课程总体设计
main()函数首先初始化图形系统,然后调用计算器computer()进行计算器的计算功能,当计
您可能关注的文档
- 2011考研《教育学基础》十二院校版笔记(考研专业笔记,教育专业考研, 考研辅导).doc
- 2011某某建材地板经销商成功经营法则( 29页).ppt
- 2011考研复习计划(绝对让你的复习思路豁然开朗).doc
- 2011版高中英语课时讲练通课件:Module4《A Social Survey-My Neighbourhood》Period 3(外研版必修1).ppt
- 201207批次大学英语(三)复习大纲.doc
- 2011高考化学第一轮课件第1章3节化学反应与能量变化.ppt
- 2011课《医药企业市场营销学》官翠玲博士.ppt
- 2012专业基础课分类模拟题民法学民事法律行为(含答案解析试题).doc
- 2011保利剧院罗永浩(老罗)演讲.ppt
- 2012个人理财分类模拟题个人理财基础(试题及答案).doc
- 2023年黑龙江省哈尔滨市香坊区财政局公务员考试《行政职业能力测验》历年真题及详解.docx
- 八上第14课中国共产党诞生.pptx
- 汽车保险课件汇编.pptx
- 中职课件:心里健康与职业生涯全册课件.pptx
- 汽车安全驾驶技术课件.pptx
- 2023年贵州省安顺市司法局公务员考试《行政职业能力测验》历年真题及详解.docx
- 2023年贵州省德江县医保局公务员考试《行政职业能力测验》历年真题及详解.docx
- 2023年贵州省册亨县财政局公务员考试《行政职业能力测验》历年真题及详解.docx
- 2023年贵州省毕节市统计局公务员考试《行政职业能力测验》历年真题及详解.docx
- 2023年黑龙江省哈尔滨市松北区教育局公务员考试《行政职业能力测验》历年真题及详解.docx
文档评论(0)