两道C语言编程题

来源:百度知道 编辑:UC知道 时间:2024/07/02 12:15:40
题目:计算两个5*5矩阵的乘积。
要求:两个5*5矩阵的数据由数据文件输入,计算乘积存入另一个文件后再显示出。

题目:走迷宫问题
要求:迷宫是许多小方格构成的矩形,如图所示,在每个小方格中有的是墙(图中的“1”),有的是咱(图中的“0”)。走迷宫就是从一个小方格沿上、下、左、右4个方向到邻近的方格,当然不能穿墙。设迷宫的入口是左上角(1,1),出口是右下角(8,8)。根据给定的迷宫,找出一条从入口到出口的路径。要求在屏幕上画出如图所示的迷宫,然后动态地画出走迷宫的路线。
上文图片

#include <stdio.h>

int main(){
FILE *p1,*p2;
char name1[40],name2[40];
printf("Enter the name of the input file: ");
scanf("%s",name1);
p1=fopen(name1,"r");
if(p1==0){
printf("Cannot open the file.\n");
return 1;
}
printf("Enter the name of the output file: ");
scanf("%s",name2);
p2=fopen(name2,"w");
if(p2==0){
printf("Cannot open the file.\n");
return 2;
}

int i,j,k;
int m1[5][5],m2[5][5],m3[5][5];
for(i=0;i<5;i++)
fscanf(p1,"%d %d %d %d %d",&m1[i][0],&m1[i][1],&m1[i][2],&m1[i][3],&m1[i][4]);

for(i=0;i<5;i++)
fscanf(p1,"%d %d %d %d %d",&m2[i][0],&m2[i][1],&m2[i][2],&m2[i][3],&m2[i][4]);

for(i=0;i<5;i++)
for(j=0;j<5;j++){
int entry=0;
for(k=0;k<5;k++)
entry+=m1[i][k]*m2[k][j];
m3[i][j]=entr