C++简单矩阵运算
必须要用C++语言,别的语言会害死我的,谢谢各位大神了,财富不多,全部供上
二、 目的与要求:
1. 目的:
培养学生综合利用C++语言进行程序设计的能力,通过学生独立思考,提高学生将所学知识转化为分析和设计简单实际问题的能力,建立程序文档、归纳总结的能力,从而增强创新和实践能力。
2. 基本要求:
要求用C++语言编程,在Visual C++环境下调试完成。
3. 创新要求:
实现程序功能后,可进行创新设计:
求矩阵的逆矩阵。
三、 设计方法和基本原理:
1. 问题功能描述:
简单的矩阵运算,进行两个矩阵的相加、相减、相乘运算及单个矩阵的乘方、转置及两个对角线之和。首先进行运算种类的选择,然后根据选择利用随机函数输入矩阵,进行相应的运算,并输出结果。
2. 问题的解决方案:
按照程序要求,应采用模块化设计方法,设计几个功能模块(函数)来实现。例如(仅供参考):
选择运算种类函数:显示选项,用户输入。
输入函数:利用随机函数完成矩阵的输入。
运算函数:根据用户选择的运算种类显示相应的矩阵(两个或单个)并输出结果。
主函数中实现对这些函数的调用以完成程序功能。
四、 主要技术问题的描述:
使使用rand()函数(无参)可产生随机整数,每调用1次rand()就产生1个随机数。
为使每次运行程序,rand()函数产生不同的随机数,要调用一次srand函数:
srand(time(NULL));
这些函数涉及到的头文件有
#include <stdlib.h>
#include <time.h>
例如产生10个随机整数的程序:
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
void main()
{
srand(time(NULL));
int a[10],i;
for (i=0;i<10;i++)
a[i]=rand();
for (i=0;i<10;i++)
cout<<a[i]<<'\t';
}