C语言课程设计矩阵问题
课程设计(论文)
题 目 名 称 矩阵问题
课 程 名 称 C语言程序课程设计
学 生 姓 名
学 号
系 、专 业 信息工程系、网络工程专业
指 导 教 师 成娅辉
2013年 6月 6 日
目 录
1 前言2
2 需求分析2
2.1 课程设计目的2
2.2 课程设计任务2
2.3 设计环境2
2.4 开发语言2
3 分析和设计2
3.1 模块设计2~3
3.2 系统流程图3
3.3 主要模块的流程图4~10
4 具体代码实现11~16
5 课程设计总结16
5.1 程序运行结果 / 预期运行结果16~17
5.2 课程设计体会17~18
参考文献18
致 谢18
1 前言
从C语言产生到现在,它已经成为最重要和最流行的编程语言之一。在各种流行编程语言中,都能看到C语言的影子,如Java的语法与C语言基本相同。5×5矩阵,用函数实现:(1)(2)(1)WINDOWS 2000/2003/XP/7/Vista系统
(2)Visual C++
2.4 开发语言
C语言
3 分析和设计
3.1 模块设计
定义一个二维数组a[5][5]存放一个矩阵,用for循环输入25个数据到a[5][5]。
定义一个f()函数用来查找矩阵中的鞍点,存放到a[N][M]数组中,应用flag标识变量,并用maxj存放某行中最大数组元素的列下标,若有鞍点则输出鞍点的位置和值,否则输出没有鞍点。
定义一个fun()用来查找矩阵中的最大数和4个最小数,存放到b[5]数组中,b[0]存放最大值放到5*5列表的最中间,即a[2][2],b[1]存放第一小数放到左上角,b[2]存放第二小数放到右上角,b[3]存放第三小数放到左下角,b[4]存放第四小数,放到右下角。
3.2 系统流程图
图3.11
3.3 主要模块的流程图
① ② ③
图3.2 f()函数流程图 1
① ② ③
图 3.3 f()函数流程图2
④
图3. ④
⑤
图3. fun()函数流程图2
⑤
⑥
图 fun()函数流程⑥
⑦
图 fun()函数流程图4
⑦
图流程#include"stdio.h"
#include"math.h"
#include"string.h"
#include"stdlib.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;i<5;i++)
{
for(j=0;j<5;j++)
{
scanf("%d",&a[i][j]);
}
}
f(a);//调用f函数求鞍点
fun(a);//调用fun函数求最大最小值
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf("%5d",a[i][j]);
}
printf("\n");
}
}
void f(int a[N][M])
{
int i,j,k; //循环变量
int flag; //标识变量,表示整个矩阵是否有鞍点
int max,min;
int maxj; //存当前行中最大数组元素的列下标
flag=0;
for(i=0;i
{
max=a[i][0];
for(j=0;j
if(max
{
max=a[i][j];
maxj=j;
}
min=max;
for(k=0