C语言矩阵的运算

  • 格式:doc
  • 大小:115.06 KB
  • 文档页数:11

C语言课程设计题目矩阵的运算
西安科技大学
二0 一一年十一月
一、设计目的
1. 综合C语言相关知识制作简单的应用程序
2. 灵活对程序代码进行利用,修改和编写;
3. 熟练将C语言所学知识和其它知识相结合
二、功能描述
编写一个矩阵运算程序,能够进行矩阵加、减、乘、转置,求矩阵的最大值,最小值,对角线元素的和等
三、流程图
四、源程序
#define M 3
#define N 3
#define P 2
#include<stdio.h>
void main()
{
int i,j,k,d,m=0,l=0,max,min,a[M][N],b[M][N],c[N][P];
printf("输入a矩阵:\n");
for(i=0;i<M;i++)
for(j=0;j<N;j++)
scanf("%d",&a[i][j]);
printf("输入b矩阵:\n");
for(i=0;i<M;i++)
for(j=0;j<N;j++)
scanf("%d",&b[i][j]);
printf("输入c矩阵:\n");
for(i=0;i<N;i++)
for(j=0;j<P;j++)
scanf("%d",&c[i][j]); printf("a矩阵:\n");
for(i=0;i<M;i++)
{
{
for(j=0;j<N;j++)
printf("%4d",a[i][j]);
}
printf("\n");
}
printf("b矩阵:\n");
for(i=0;i<M;i++)
{
{
for(j=0;j<N;j++)
printf("%4d",b[i][j]);
}
printf("\n");
}
printf("c矩阵:\n");
for(i=0;i<N;i++)
{
{
for(j=0;j<P;j++)
printf("%4d",c[i][j]);
}
printf("\n");
}
printf("a,b矩阵之和:\n");
for(i=0;i<M;i++)
{
{
for(j=0;j<N;j++)
printf("%4d",a[i][j]+b[i][j]);
}
printf("\n");
}
printf("a,b矩阵之差:\n");
for(i=0;i<M;i++)
{
{
for(j=0;j<N;j++)
printf("%4d",a[i][j]+b[i][j]);
}
printf("\n");
}
printf("a,c矩阵之积:\n");
for(i=0;i<M;i++)
{
{
for(j=0;j<P;j++)
{
for(d=0,k=0;k<N;k++)
d+=a[i][k]*c[k][j];
printf("%4d",d);
}
}
printf("\n");
}
printf("a矩阵的转置:\n");
for(j=0;j<N;j++)
{
{
for(i=0;i<M;i++)
printf("%4d",a[i][j]);
}
printf("\n");
}
printf("a矩阵的最大值:\n"); max=a[0][0];
for(i=0;i<M;i++)
for(j=0;j<N;j++)
if (max<a[i][j])
max=a[i][j];
printf("%4d\n",max); printf("a矩阵的最小值:\n"); min=a[0][0];
for(i=0;i<M;i++)
for(j=0;j<N;j++)
if (min>a[i][j])
min=a[i][j];
printf("%4d\n",min);
printf("a矩阵的主对角线之和:\n");
for(i=0;i<M;i++)
m+=a[i][i];
printf("%d\n",m);
}
五、运行界面
六、心得体会
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。

通过了这半学期的C语言课程学习和设计,我学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

在设计的过程中遇到问题,可以说得是困难重重,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。

通过这次课程设计之后,一定把以前所学过的知识重新温故。

程序设计师需要大量的时间去动手练习才能体验到她的内涵,同时还需要用心去投入,时间和感情花下去之后,的确慢慢的感受到有所收获了,而确实使我得到了一点点的乐趣。

这可能是一个良性循环的开始吧,相信以后会做的更好的。

这次课程设计终于顺利完成了,在设计中遇到很多编程问题,但是在老师和同学的帮助下终于解决。

在此向老师还有给过我帮助的同学们表示忠心的感谢!。