资源描述:
《机械原理课设7》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《计算机程序训练》说明书指导老师:杨树彳旦姓名:夏冰学号:070510104日期:2009-6-12一、题目:计算两个5*5矩阵的乘积。两个5*5矩阵的数据由数据文件输入,计算乘积存入另一个文件后再显示出。二、问题描述1)数据由数据文件输入。2)计算两个矩阵的乘积。3)计算结果存入另一个文件再显示出。三、程序设计思路创建三个指定文件,将文件上的内容输入到数组中,进行矩阵相乘计算,再将结果输入指定文件。四、系统设计说明(-)系统功分析:1、系统用到的数据类型程序设计一般由两部分组成:算法和数据结构,合理地选择和实现一个数据结构和处理这些数据结构具有同样的重要
2、性。在矩阵相乘程序中,由于需要用文件输入,输出来记录数据运行,主要建立路径,设置矩阵相乘,运行后可从所建立文件中找到想要的结果,直接更改输入文件中数据则可进行下一次运行,为操作带来方便。注意:程序只用于5*5矩阵计算。主要包括如下:#include/*标准库函数*/#include/*标准库函数*/inti,j,k;/*定义整型变量*/FILE*fpl,*fp2,*fp3;/*指向文件的指针*/2、main()主函数程序采用逐步细化的方式设计,由主函数进入,按照题目要求逐步进行,条理清晰,打开指定路径的文件,用for循
3、环读入数据并输岀到屏幕上,再用for循环实现矩阵相乘,输出到另一个文件,并在屏幕上显示出来。3>fopen()打开文件利用函数打开指定的文件4、fscanf()格式化输入直接利用输入函数把文件屮的内容输入到数组屮。5、fprintf()格式化输出利用函数直接将数组中的内容输入到指定文件中。6、fclose()关闭文件关闭所打开的文件,以免数据丢失。7、exit()关闭所有文件,终止正在执行的程序,待用户检查出错误修改后再运行。(-)系统包括:建立指定路径文件,文件的输入、输岀,矩阵相乘计算。1、本程序是一个简单的5*5矩阵的计算程序。2、程序实现如下的功能
4、:文件的输入、输出,保存,矩阵相乘的计算,文件打开,文件关闭,数据输出到屏幕。如图显示:功能流程图开始V厂—、执行main()函数在C盘建立三个文件a.txt,b.txt,c.txt,打开文件a.txt,b.txto利用for•循环将文件a.txt屮数据输入到数组a中,并显示到屏幕上。利用for循环将文件b.txt中数据输入到数组b中,并显示到屏幕上。关闭文件a.txt,b.txtov利用for循环实现矩阵相乘。V打开文件c.txto利用for循环将结果显示到屏幕上,并存放到c.txt文件屮,关闭c.txt文件。V结束(三)算法设计1)在C盘建立三个文件a
5、.txt,b.txt,c.txto2)打开文件a.txt,b.txto并显示到屏幕上。并显示到屏幕上。文件屮3)利用for循环将文件a.txt屮数据输入到数组a屮,4)利用for循环将文件b.txt中数据输入到数组b中,5)关闭文件a.txt,b.txto6)利用for循环实现矩阵相乘。7)打开文件c.txto8)利用for循环将结果显示到屏幕上,并存放到c.txt9)关闭c.txt文件。五、程序源代码#include/*标准库函数*/include/*标准库函数*/voidmain(){inti,j,k;FILE*f
6、pl,*fp2,*fp3;/*定义指向文件的指针*/inta⑸[5],b[5][5],c⑸[5]二{0};/******打开文件******/if((fp1=fopen(nc:\a.txfr,,))==NULL){printfC'cannotopena.txt'r);exit(O);/*关闭文件,终止执行任务,待检错*/}/******打开文件******/if((fp2=fopen(,,c:\b.txtn,,,r,,))==NULL){printfC'cannotopenb.txtM);exit(0);}/******文件数据输入数组**
7、****/fbr(i=0;i<=4;i++){for(j=0;j<=4;j++)fscanf(fp1,"%d",&a[i][j]);}/******将数组a输出到屏幕上******/printf("outputarraya");printf(,,M);for(i=0;i<=4;i++)for(j=0;j<=4;j++)printf(,,H);}printf(HH);/******文件数据输入数组******/for(i=0;i<=4;i++){for(j=0;j<=4;j++)fscanf(fp2,”%d”,&b[i][j]);}/****
8、**将数组b输出到屏幕上******/printf("output