《C语言程序》课程设计报告书魔方阵程序设计.doc
《《C语言程序》课程设计报告书魔方阵程序设计.doc》由会员分享,可在线阅读,更多相关《《C语言程序》课程设计报告书魔方阵程序设计.doc(18页珍藏版)》请在三一办公上搜索。
1、吉林工程技术师范学院C语言程序课程设计报告书设计题目: 魔方阵程序设计 专 业: 计算机科学与技术 班级: 1054 学生姓名: 学号: 21 指导教师:xx 2011年1月信息工程学院摘 要我的实验题目是对C语言程序设计魔方阵的编写,主要的功能是实现每一行,每一列以及对角线的相加结果相同,而且每一个数字均不相等。本次实验能够充分的考核我们对C语言的学习程度以及动手操作能力,对我们提高C语言的能力有极大的帮助,所以这次实验也是十分有必要的。我的设计内容就是利用循环语句,以及判断条件等函数的合理使用,通过不断的运行,调试,输出,对本程序进行合理的解决,对魔方阵进一步的了解掌握。关键字:C语言 魔
2、方阵 程序设计目 录摘 要第1章 概述1第2章 系统分析22.1 技术分析22.2 功能分析2第3章 总体设计与详细设计33.1 系统总体设计33.2 详细设计4第4章 编码实现64.1 数据输入部分代码设计64.2 运算部分代码设计64.3 输出部分代码设计7第5章 系统调试95.1 程序运行结果95.2 调试过程中的问题与对策10第6章 设计总结10参考资料12致谢12附录:1 源代码132 附图14第1章 概述本次实验报告十分有意义,对巩固C语言的学习有很大的帮助。作用:我的实验课题是魔方阵(魔方阵是一个奇数行列式方阵),主要是实现一行,一列,对角线的和都相等。意义、帮助:1、能够熟练掌
3、握if、ifelse、ifelse if语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句实现分支选择结构。2、能够熟练掌握while语句和for语句格式及使用方法,掌握循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。3、能够掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。第2章 系统分析2.1 技术分析我设计的程序从魔方阵的判断语句入手,利用循环语句进行判断,利用scanf输入函数对数据进行输入,然后对输入的数据进行判断,在利用If,else语句进行判断,然后利用循环语句进行循环,建立魔方
4、,判断数据的位置,最后进行输出。软件系统采用Turbo C2.0作为题目的设计平台,在这个平台上进行程序的调试。2.2 功能分析我设计的程序包括的功能有很多,主要是数据的输入,判断,建立魔方,判断条件,输入魔方等功能。本程序能够对C语言的知识得到合理的运用,对语句的判断是一个极大的考核,也能锻炼我的思维能力,逻辑能力,动手能力等。通过本次实验;对于提高C语言函数,语句以及程序的编写都有极大的帮助。第3章 总体设计与详细设计3.1 系统总体设计就是使用模块化思维方法分析课题,画出模块结构图。可采取自顶向下、逐层分解的方法,将课题分成有若干个模块,然后对各模块重点和难点内容进行分析,最终各个击破。
5、1设计流程图系统总体结构图如3-1所示。以输入“3”输出为例:定义a1616,i,j,k,p,n初始化从键盘输入3判断3是否不等于0小于16 是否为奇数 真假P=1继续循环while退出while运行循环语句结束死循环输出魔方阵图3-1 总体设计流程图2包含的功能本系统包括了数据的输入,运行,判断,调试,输出等功能。3.2 详细设计# include void main()int a1616,i,j,k,p,n; / 一堆定义 p=1; while(p=1) / p 是一个标志,专门用来控制何时跳出whileprintf(enter n:); /读入一个整数到n 就是幻方的阶数。 scanf(
6、%d,&n); if (n!=0)&(n=1 且=16 且是奇数,就跳出while,继续以下计算。/如果不满足以上条件就死循环。 for (i=1;i=n;i+) for (j=1;j=n;j+) aij=0; 将矩阵中的1n*1n的范围内清0.i=1; j=n/2+1; aij=1;i=1; / 开始填1,在第一行的中间 for (k=2;k=n*n;k+) i=i-1;j=j+1;/ 依次填 2,3.一直到填满 / 规则是当前数填在上个数的右上。 if (in) i=i+2;j=j-1; / 但是如果到达矩阵的最右上时,要改为 / 填在最右上的下边一格。 else if ( in ) j=
7、1;/ 纵向方向同理 If (aij=0) aij=k;如果当前没有数,就填入 else i=i+2;j=j-1; aij=k; / 如果当前已经有数占领了,就填到上一个数的下边。/* 如果要看的清楚,就每填一个就打印一次。 for(i=1;i=n;i+) for (j=1;j=n;j+) printf(%4d,aij); / 循环打印结果。 printf(nn);return 0; 这个模块实现了数据的定义,以及定义的类型,数据的初始化。第4章 编码实现 4.1 数据输入部分代码设计我的实验输入部分利用了for语句,也就是循环语句。例如:int a1616,i,j,k,p,n; p=1; w
8、hile(p=1) printf(enter n:); scanf(%d,&n); if (n!=0)&(n=15)&(n%2!=0) p=0; for (i=1;i=n;i+) for (j=1;j=n;j+) aij=0; i=1; j=n/2+1; aij=1; for (k=2;k=n*n;k+) 4.2 运算部分代码设计我的实验运算部分利用了if 、else语句也就是判断语句。例如:if (in) i=i+2;j=j-1; else if ( in ) j=1; if (aij=0) aij=k; else i=i+2;j=j-1; aij=k; 4.3 输出部分代码设计我的实验运算
9、部分利用了printf语句也就是使用了函数。例如:for(i=1;i=n;i+) for (j=1;j=n;j+) printf(%5d,aij);printf(nn); return 0;第5章 系统调试 5.1 程序运行结果系统经过多次调试、运行、修改,通过后的运行界面如图5-1所示。图5-1 程序运行结果图1当输入的数据是3时,输出的结果如图5-2所示。2当输入的数据是5时,输出的结果如图5-3所示。 图5-2 数据为3时运行结果图 图5-3 数据为5时运行结果图5.2 调试过程中的问题与对策1问题(1)首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;(2)再有对C语言的一些
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序 语言 程序 课程设计 报告书 魔方 程序设计
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-2385142.html