[C语言课程设计矩阵问题.doc
文本预览下载声明
课程设计(论文)
题 目 名 称 矩形问题
课 程 名 称 C语言程序课程设计
学 生 姓 名 龙正彬
学 号 1441303035
系 、专 业 信息工程系、通信工程
指 导 教 师 刘远军 目 录
1 前言 2
2 需求分析 2
2.1 课程设计目的 2
2.2 课程设计任务 2
2.3 设计环境 2
2.4 开发语言 2
3 分析和设计 3
3.1 模块设计 3
3.2 系统流程图 3
3.3 主要模块的流程图 4
4 具体代码实现 5
5 课程设计总结 6
5.1 程序运行结果 / 预期运行结果 7
5.2 课程设计体会 8
参考文献 9
致 谢 7
1 前言
???C语言作为一门最通用的语言,在过去很流行,将来依然会如此。几乎每一个理工科或者其他专业的学生毫不例外地要学习它。记得大学里,很多学校都把谭浩强教授的《C语言设计》作为入门教材,这是绝佳的选择。然而,要更进一步,更全面而深入地学习呢?显然有点力不从心。本书正是为了弥补这个缺憾而写的,希望能对想比较全面而深入学习C语言程序设计的人有所帮助。从C语言产生到现在,它已经成为最重要和最流行的编程语言之一。在各种流行编程语言中,都能看到C语言的影子,如Java的语法与C语言基本相同。学习、掌握C语言是每一个计算机技术人员的基本功之一。
2 需求分析
2.1 课程设计目的
学生在教师指导下运用所学课程的知识来研究、解决一些具有一定综合性问题的专业课题。通过课程设计(论文),提高学生综合运用所学知识来解决实际问题、使用文献资料、及进行科学实验或技术设计的初步能力,为毕业设计(论文)打基础。
2.2 课程设计任务
已知一个5×5矩阵,用函数实现:(1)找出该矩阵中的鞍点,“鞍点”指的是一个位置,该位置上的元素在该行上最大,在该列上最小,也可能没有鞍点。(2)将矩阵中最大的元素放在中心,四个角分别放四个最小的元素(按从左到右,从上到下顺序依次从小到大存放)。
2.3 设计环境
(1)WINDOWS 2000/2003/XP/7/Vista系统
(2)Visual C++或TC集成开发环境
2.4 开发语言
C语言
3 分析和设计
3.1 模块设计
(1)定义一个二维数组a[5][5]存放一个矩阵,用for循环输入25个数据到a[5][5]。
(2)定义一个f()函数用来查找矩阵中的鞍点,存放到a[N][M]数组中,应用flag标识变量,并用maxj存放某行中最大数组元素的列下标,若有鞍点则输出鞍点的位置和值,否则输出没有鞍点。
(3)定义一个fun()用来查找矩阵中的最大数和4个最小数,存放到b[5]数组中,b[0]存放最大值放到5*5列表的最中间,即a[2][2],b[1]存放第一小数放到左上角,b[2]存放第二小数放到右上角,b[3]存放第三小数放到左下角,b[4]存放第四小数,放到右下角。
3.2 系统流程图
图3.1 系统流程图
3.3 主要模块的流程图
② ① ② ③
图 3.3 f()函数流程图2
④
图3.4 fun()函数流程图1
④
⑤
图3.5 fun()函数流程图2
⑥
图3.6 fun()函数流程图3
⑥
⑦
图3.7 fun()函数流程图4
⑦
图3.8 fun函数流程图5
4 具体代码实现
#includestdio.h
#includemath.h
#includestring.h
#includestdlib.h
#define N 5
#define M 5
void f(int a[N][M]);
void fun(int a[5][5]);
void main()
{
int i,j,a[5][5];
printf(请输入矩阵:\n);
for(i=0;i5;i++)
{
for(j=0;j5;j++)
{
scanf(%d,a[i][j]);
}
}
f(a); //调用f函数求鞍点
fun(a); //调用fun函数求最大最
显示全部