沈阳理工大学 材料工程 学院
计算机程序训练任务书
学生姓名:xx 班级:xxxxxxxxx 学号:xxxxxxxxxx
设计题目:计算两个5*5矩阵的乘积。
计算机程序训练题目及要求
机械学院 自动化教研室
目录
一.训练目的…………………………………………………2
二.设计要求…………………………………………………2
三.训练题目…………………………………………………2
四.具体内容…………………………………………………2
一.训练目的:
计算机程序设计训练是学习完《计算机程序设计》课程后进行的一次全面的综合性上机实验。其目的在于为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。
二.设计要求:
按照给定题目独立设计程序,上机调试通过 。
写出设计报告
提交报告的内容如下:
1)题目内容的描述
2)应用程序功能的详细说明
3)输入数据类型、格式和内容限制;
4)主要模块的算法描述
–以程序流程图的方式给出
–简要的语言描述
5)结束语
6)程序的源代码清单
7)报告的字数,不算源代码清单不少于4页
按规定的模板封面输出,不准自定义封面格式
提交报告的格式如下:
1)正文宋体小四号字
2)每个自然段开始空两格.
3)文中英文用新罗马(time new roman),四号
4)源程序清单用英文新罗马五号
5)提交报告封面使用《沈阳理工大学课程设计(论文)》专用封面
注:对于程序中未能实现的部分需要加以说明。对于程序中所参考的部分代码需要加以声明,并说明出处。
三.训练题目:
题目:计算两个5*5矩阵的乘积。
要求:两个5*5矩阵的数据由数据文件输入,计算乘积存入另一个文件后再显示出。
四.具体内容:
(一) 题目内容描述:
通过文件读入的方式向程序输入两个5*5矩阵的数据,计算这两个矩阵的乘积,将乘积写入到磁盘文件,并且显示在屏幕上。
(1)读入信息:从a.txt和b.txt中得到两个矩阵的数据,同时输出到屏幕上。
(2)计算乘积:通过程序求出矩阵a和b的乘积,得到矩阵c。
(3)存盘:将乘积(即矩阵c)写入到已建立的文件c.txt中。
(4)显示:将乘积(即矩阵c)输出到屏幕上。
(二)程序功能说明应用数据类型:
程序设计一般由两部分组成:算法和数据结构,合理地选择和实现一个数据结构和处理这些数据结构具有同样的重要性。
主要包括如下:
1.#include // 标准输入输出函数 //
#include // 标准库函数 //
void main() // 主函数 //
{
FILE *fp1,*fp2,*fp3; // 定义三个文件指针变量 //
int a[5][5],b[5][5],c[5][5]={0};
// 定义三个二维数组,用来存放矩阵 //
int i,j,k;
}
2.main()主函数
C程序的执行是从main函数开始的,也是在main函数中结束整个程序的运行。此程序为顺序结构,从上到下依次完成每一个功能。
3.fopen函数 文件的打开
fopen( )用来打开文件。fp1=fopen("c:\\a.txt","r")的意义是打开c磁盘目录中的文件”a.txt”,使用文件方式为“r(读入)”,并使fp1指向该文件。其中"r"代表只读,若将"r"换成"w", "w"代表只写。
4.fclose函数 文件的关闭
fclose()用来关闭文件,在向文件写数据时,是先将数据输出到缓冲区,待缓冲区充满后才正式输出给文件。为了防止当数据未充满缓冲区而程序结束运行时,将缓冲区的数据丢失。用fclose函数关闭文件,它先把缓冲区中的数据输出至磁盘文件,然后才释放文件指针变量,因此,文件用完后必须关闭。
if((fp1=fopen("c:\\a.txt","r"))==NULL)
{
printf("cannot open a.txt\n");
exit(0);
}
这段程序的意义是,用只读的方式打开c盘目录下的文件,如果返回的指针为空,则给出提示信息”cannot open a.txt”,然后执行exit(0)退出程序。
5.exit()函数
该函数的作用是关闭所有文件,终止正在执行的程序,待用户检查错误修