C语言程序设计课程设计--编写函数,求取两个整数m,n的最大公约数和最小公倍数.doc

C语言程序设计课程设计C语言程序设计课程设计评语考勤(10)纪律(10)过程(40)设计报告(30)答辩(10)总成绩(100)专 业 电气工程及其自动化 班 级 电气1203 姓 名 熊董 学 号 201209837 指导教师 王思华 兰州交通大学自动化与电气工程学院2013 年07月 20日1、基础题1.1题目编写函数,求取两个整数m,n的最大公约数和最小公倍数。1.2题目分析求两个整数的最大公约数和最小公倍数可以用辗转相除法,用两个函数max和min分别求出最大公约数和最小公倍数。在主函数中输入两个整数m和n,并传递给函数max,求出最大公约数返回主函数并赋给整型变量h,然后h和两个整数m,n一起作为实参传递给函数min,从而求出最小公倍数,返回主函数赋给l。输出最大公约数和最小公倍数。主函数N-S图如图一输入两个整数m和n调用max函数求出最大公约数h调用min函数求出最小公倍数l输出两个整数的最大公约数和最小公倍数 图一主函数max函数N-S图 如图二 min函数N-S图如图三 输入m和nYnm Ntm;mn;nt当rmn0mn,nr 向主函数返回n的值输入m,n和h向主函数返回m*n/h的值 图二max函数 图三min函数1.3源程序includestdio.hint main int maxint,int;int minint,int,int;int m,n,h,l;scanfd,d,hmaxm,n;printf最大公约数是dn,h; lminm,n,h;printf最小公倍数是dn,l;return 0; int maxint m,int n int t,r;ifnm; tm;mn;nt;whilermn0 mn; nr; returnn; int minint m,int n,int h returnm*n/h;1.4程序运行结果如图四 图四基础题运行截图162、改错题2.1题目include stdio.hinclude conio.hvoid funint a, b int t; t b; b a ; a t;main int a, b; clrscr ; printfEnter a,b ; scanfdd, fun printfad bdn, a, b;2.2题目分析该源程序的目的是交换两个数的值,有主函数可以看出该函数是应用指针交换两个数的值。所以调用函数中的a,b都要改成*a,*b, void funint a, b改成void funint *a,int *b。clrscr 只能在Turbo-C中可用所以改用systemcls。输入*a,*b t*b;*b*a;*atviod fun函数N-S图如图五 main函数N-S图如图六清屏输入a,b将a,b赋值到 t *b; *b *a ; *a t; main int a, b; systemcls; printfEnter a,b ; scanfdd, fun printfad bdn, a, b; 2.4程序运行结果如图七 图七改错题运行结果截图3、综合题3.1题目设计课题四猜数字游戏一、问题描述该游戏可以由程序随机产生或由用户输入四个0到9之间的数字,且不重复。玩游戏者通过游戏提示输入八次来匹配上面所输入的数字。A表示位置正确且数字正确,B表示数字正确而位置不正确。二、功能要求1. 本游戏显示这样的菜单(1) 随机产生数据(2) 用户输入数据(3) 退出游戏2. 游戏成功与否都能返回主菜单三、算法提示1. 数据结构数组2. 用简单的程序设计方法四、测试数据测试数据3792第一次输入12340A2B第二次输入 56780A1B第三次输入08670A1B第四次输入 97861A1B第五次输入 17942A0B第六次输入27932A2B第七次输入 37924A0B游戏成功五、其它对该系统有兴趣的同学可以在实现系统基本功能后,完善系统的其它功能,如破记录功能,若你所匹配的次数小于纪录保持者,则为破纪录。3.2题目分析本题要求做一个猜字游戏,其功能包括菜单、用户模式测试、随机产生数据进行游戏。所以可以得知该游戏包括主函数、随机数产生函数、输入数字函数、游戏函数、测试数据输入函数。首先通过主函数输出菜单并选择所要进行的模式,如果选择随机产生数据则调用随机数产生函数产生随机数,然后将产生的数据代入游戏函数进行游戏,游戏函数中进行游戏输入数据时调用输入数字函数输入数据;如果选择用户输入数据则调用测试数据输入函数输入数据,之后将输入的数据代入游戏函数中进行游戏,游戏函数中进行游戏输入数据时调用输入数字函数输入数据。(1)系统的总体框图如图八开始功能菜单显示随机产生数据用户输入数据退出c_randc_printfexit1 图八系统的总体框图(2)函数间的调用关系如图九 主函数main随机模式c_rand游戏函数c_game输入数据函数c_char *str用户模式c_printf输入数据函数c_ 图九函数间的调用关系3.3流程图输入数字函数如图十 i0 for i 0 to 9 strigetchputcharstrii putcharnfor i 0 to 3 Ystri0stri9 N无效输入,重新输入 for j 0 to iYstristrj N无效输入,重新输入 j i 图十输入数字函数游戏函数如图十一out5 for ci 0 to 7printf第d次输入,ci1 c_infor i 0 to 3 Y initempi Nout0 for j 0 to 3 initempjY Nout2 j 输出字符串out strcmpout,”4ABb” Y N游戏成功,按任意键返回主菜单 getch out00 out20 游戏失败,按任意键返回主菜单 getch 图十一游戏函数随机数产生函数如图十二定义字符数组data”0123456789” 定义字符数组 temp4 清屏 输出“随机模式”for i0;i4;ijrand10-i;tempidataj;datajdata10-i-1;执行函数 c_gametemp图十二随机数产生函数用户输入模式函数如图十三定义字符数组 temp4清屏输出“用户输入模式”输出请输入测试数据执行函数 c_temp清屏输出”用户输入模式”执行函数 c_gametemp图十三用户输入模式函数主函数如图十四初始化随机数发生器清屏 While1输出“1随机产生数据” “2 用户输入数据” “3 退出游戏” “choice”输入数字1,2,3中的其中一个Y1 N执行函数 c_rand 执行break结束循环Y2 N执行函数 c_rand执行break结束循环退出程序 图十四主函数3.4源程序include stdio.hinclude stdlib.hinclude conio.hinclude string.hinclude time.hvoid c_char *str int i,j;fori0;i4;i strigetch; putcharstri; putcharn; fori0;i4;i ifstri0stri9 printf无效输入,请重新输入; goto ; forj0;ji;j ifstristrj printf无效输入,请重新输入; goto ; void c_gameconst char *temp int i,j,ci; char in4; char out50A0B; forci0;ci8;ci printf第 d 次输入,ci1; c_in; fori0;i4;i ifinitempi out0; else forj0;j4;j ifinitempj out2; printfsn,out; ifstrcmpout,4A0B0 printf游戏成功,按下任意键返回主菜单; getch; return; out00; out20; printf游戏失败,按下任意键返回主菜单; getch;void c_rand int i,j; char data0123456789; char temp4; systemcls; printf随机模式nn; fori0;i4;i jrand10-i; tempidataj; datajdata10-i-1; c_gametemp;void c_printf char temp4;systemcls; printf用户输入模式nn; printf请输入测试数据; c_temp; systemcls; printf用户输入模式nn; c_gametemp;void main srandtimeNULL; while1 systemcls; printf1 随机产生数据n; printf2 用户输入数据n; printf3 退出游戏n; printfchoice ; switchgetch case 1c_rand;break; case 2c_printf;break; case 3exit1; 3.5程序运行结果主菜单如图十五 图十五主菜单截图用户测试模式如图十六 图十六用户测试模式运行结果截图随机模式如图十七 图十七随机模式运行结果截图当输入的四个数字中有重复数字时如图十八 图十八当输入的四个数字中有重复数字时结果截图当选择退出后如图十九 图十九当选择退出后结果截图总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握计算机开发技术是十分重要的。 回顾起此次课程设计,至今我仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,在整整一个星期的日子里,可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,这毕竟独立做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。 这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在王老师的辛勤指导下,终于游逆而解。同时,我学得到很多实用的知识,在次我表示感谢同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢

C语言设计函数求最大公约数,C语言程序设计课程设计--编写函数求取两个整数m,n的最大公约数和最小公倍数.doc_在线文库www.lddoc.cn...相关推荐

  1. C语言开发专题(56个案例)-程序设计 - 课程设计

    C语言往往作为大学学习过程之中的第一门编程语言,不仅仅是计算机科班,还包括机械等许多理工科专业,甚至文科专业也在学习这么课程.我分享五十几个案例供大家参考学习. (1)程序多为单文件,部分为项目工程软 ...

  2. c语言成颖pdf,程序设计语言开篇导学.ppt-资源下载在线文库www.lddoc.cn

    <程序设计语言>开篇导学.ppt 程序设计语言开篇导学,成颖 教授 博士生导师 南京大学信息管理学院,1.引言,C语言程序设计是计算机相关学科中的一门基础课,也是培养结构化程序设计思想以及 ...

  3. 数值计算方法上机c语言编程,数值计算方法上机实验报告.doc-资源下载在线文库www.lddoc.cn...

    <数值计算方法>上机实验报告.doc 华 北 电 力 大 学实 验 报 告实验名称 数值计算方法上机实验 课程名称 数值计算方法 专业班级电力实 08 学生姓名李超然学 号20080100 ...

  4. A13在c语言中是合法变量吗,C语言中局部变量和全局变量等在内存中的存放位置.doc-资源下载在线文库www.lddoc.cn...

    C语言中局部变量和全局变量_等在内存中的存放位置.doc C 语言中局部变量和全局变量 变量的存储类别static,extern,auto,register 8.8 局部变量和全局变量在讨论函数的形参 ...

  5. c语言程序阅读题库,C语言程序设计-阅读程序题库及答案.doc-资源下载在线文库www.lddoc.cn...

    C语言程序设计-------阅读程序题库及答案.doc 阅读程序题 2 1 以下程序的输出结果是 main D float a a 1 100000000 printf g a A 0 00000e ...

  6. 2020华师c语言程序客观题作业和答案,18秋华师C语言程序设计B在线作业-3辅导资料.docx-资源下载在线文库www.lddoc.cn...

    18秋华师<C语言程序设计B>在线作业-3辅导资料.docx 18秋华师C语言程序设计B在线作业-31.C 2.D 3.D 4.D 5.A 一.单选题共50题,100分1.以下关于运算符优 ...

  7. 计算机基础c语言试题,计算机应用基础C语言测试题.doc-资源下载在线文库www.lddoc.cn...

    <计算机应用基础C语言>测试题.doc 计算机应用基础C语言测试题一选择题(每空2分,共70分).从下列每题提供的A.B.C.D供选择的答案中,选出一个正确的答案,填在对应的( )内.1在 ...

  8. linux课程设计题目主存空间的分配与回收,可变分区分配与回收,哈尔滨理工大学操作系统课程设计报告.doc-资源下载在线文库www.lddoc.cn...

    可变分区分配与回收,哈尔滨理工大学 操作系统课程设计报告.doc 哈 尔 滨 理 工 大 学 课 程 设 计 ( 操 作 系 统 ) 题 目 可变分区分配与回收 (首次适应算法) 班 级 计算机科学与 ...

  9. 用函数求C15的值C语言,南开19春学期(1503、1509、1603、1609、1703)C语言程序设计在线作业-1辅导资料.docx-资源下载在线文库www.lddoc.cn...

    南开19春学期(1503.1509.1603.1609.1703)<C语言程序设计>在线作业-1辅导资料.docx 南开19春学期(1503.1509.1603.1609.1703)C语言 ...

最新文章

  1. 两次关于软考网络工程师的经历
  2. 网站建设技术方案_企业网站建设解决方案
  3. VTK:BSP树时序用法实战
  4. JavaWeb网上图书商城完整项目--day02-14.登录功能的login页面处理
  5. chromium关闭更新_你的Win10系统20H2了吗此乃Win10年度最靠谱的更新还有Win10优化大师助阵...
  6. 没有lrzsz,怎么传文件到服务器?
  7. [bzoj1042] [HAOI2008]硬币购物
  8. puppet进阶指南——service资源详解
  9. 解决jsp页面数据传递乱码问题
  10. IMSIDesign.TurboCAD.Designer.v14
  11. 视频教程-Excel函数教程(下)-Office/WPS
  12. ES2015新语法详解——生成器(Generator)
  13. 韦东山之学习笔记——NOR Flash
  14. 分门别类刷leetcode——链表
  15. H5移动端出生日期插件
  16. 微信小程序--保存图片到相册功能实现
  17. 数据结构-连续线段-C语言-[输入n条线段各个端点坐标,求包含最多线段的连续线段]
  18. 每日分享 环境报错:Exception in thread “main“ java.lang.RuntimeException: Cannot create staging directory
  19. kepp-alive的作用?keep-alive的属性?路由元信息?白名单黑名单?keep-alive的钩子函数
  20. [论文阅读-NeRF+SLAM] iMAP:首个隐式场景表征的实时SLAM

热门文章

  1. 基本算法-约德尔测试
  2. 临界资源与临界区、互斥与同步、原子性概念介绍
  3. 高并发下System.currentTimeMillis()性能问题及优化方案
  4. WPF Textbox自动换行
  5. OS X Mavericks 10.9.5 (13F34) bt下载地址
  6. 祝大家新春快乐,万事如意!
  7. Linux 中用 dh_make 将 Qt + CMake 项目打包为 deb 文件
  8. 哪个行业最难逃35岁危机?看看大数据怎么说!
  9. 信息学测评AC、WA、TLE和CE等全称和意思附常见编程竞赛
  10. adodb/adodb.inc.php,php adodb连接不同数据库