c语言程序设计对角矩阵,C语言程序设计报告.doc

C语言程序设计报告

C程序设计报告

学院:地质与环境学院

专业:资源勘查工程0901

姓名:王甲

学号:0909030119

目录

1.设计任务书

1.1题目

1.2设计要求

1.3程序涉及的知识点

2.功能设计

2.1算法设计

2.2部分模块流程图

3.程序代码设计

3.1源代码

3.2运行结果

4.运行结果

5.程序设计总结

6.致谢

7.参考文献

1设计任务书

1.1 题目

矩阵运算

1.2 设计要求

此程序为矩阵运算的相关程序,用来计算包括两矩阵的加、减、乘运算,求矩阵的转置矩阵、最大值元素、最小值元素及对角线元素之和等运算。

1.2 本系统涉及的知识点

此程序涉及了老师讲授的多个知识点,包括:for、if、printf及scanf 等语句,顺序、选择、循环等结构。

2功能设计

2.1 算法设计

此程序需要实现的功能要求:

利用for、if、printf及scanf 等语句来实现所需功能。

输入矩阵a和b的元素之后,依次计算:

程序一:计算a+b矩阵;

程序二:计算a-b矩阵;

程序三:计算a*b矩阵;

程序四:计算a的转置矩阵;

程序五:计算a矩阵的最小值元素;

程序六:计算a矩阵的最大值元素;

程序七:计算a矩阵的主对角线元素之和;

程序八:计算a矩阵的副对角线元素之和;

程序九:计算a矩阵的上三角元素之和;

程序九:计算a矩阵的下三角元素之和;

2.2 部分模块流程图

3 程序源代码

3.1源代码

#include"stdio.h"

void main()

{

int a[3][3],b[3][3],c[3][3],

int i,j,k,s,max,min,sum1=0,sum2=0,sum3=0,sum4=0;

printf("矩阵运算\n");

printf("\n");

printf("请输入a矩阵元素:\n");

for(i=0;i<3;i++) /*通过二重循环给a矩阵的元素赋值*/

for(j=0;j<3;j++)

scanf("%4d",&a[i][j]);

printf("a矩阵:\n");

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

printf("%6d",a[i][j]);

printf("\n");

}

printf("\n");

printf("请输入b矩阵元素:\n");

for(i=0;i<3;i++) /*通过二重循环给b矩阵的元素赋值*/

for(j=0;j<3;j++)

scanf("%4d",&b[i][j]);

printf("b矩阵:\n");

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

printf("%6d",b[i][j]);

printf("\n");

}

printf("\n");

printf("程序一:计算a+b矩阵\n"); /*计算a+b矩阵并输出*/

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

{c[i][j]=a[i][j]+b[i][j];

printf("%6d",c[i][j]);}

printf("\n");

}

printf("\n");

printf("程序二:计算a-b矩阵\n"); /*计算a-b矩阵并输出*/

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

{c[i][j]=a[i][j]-b[i][j];

printf("%6d",c[i][j]);}

printf("\n");

}

printf("\n");

printf("程序三:计算a*b矩阵\n"); /*计算a*b矩阵(c矩阵)并输出*/

for(i=0;i<3;i++) /*最外层循环控制c矩阵的行数*/

for(j=0;j<3;j++) /*次外层循环控制c矩阵的列数*/

{for(k=s=0;k<3;k++) /*计算c矩阵的每个元素的值*/

s+=a[i][k]*b[k][j];

c[i][j]=s;}

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

printf("%6d",c[i][

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值