资源简介
实现c语言动态数组,实现矩阵相乘,实现了文件读写
代码片段和文件信息
#include
#include
#include
#include “function.h“
int main()
{
/////////////////////system initialization///////////////////////////////////////
int mnk;
FILE *fp*fp1*fp2; //*fp1*fp2 for reading in1.file\in2.file #fp2 for writing out.file
char ch;
////////////////////initialize mn///////////////////////////////////////
fp=fopen(“in1.file““r“);
if(fp==NULL)
{
printf(“error load in1.file“);
}
ch=fgetc(fp);
m=ch-‘0‘;
ch=fgetc(fp);
ch=fgetc(fp);
n=ch-‘0‘;
////////////////////initialize nk///////////////////////////////////////
fp1=fopen(“in2.file““r“);
if(fp1==NULL)
{
printf(“error load in2.file“);
}
ch=fgetc(fp1);
n=ch-‘0‘;
ch=fgetc(fp1);
ch=fgetc(fp1);
k=ch-‘0‘;
/////////////////////allocate dynamic array///////////////////////////////////////
int **a;
int i;
a = (int **)malloc(sizeof(int *) * m); //分配指针数组
a[0] = (int *)malloc(sizeof(int) * m * n); //一次性分配所有空间
for(i=1; i {
a[i] = a[i-1] + n;
}
int **b;
int j;
b = (int **)malloc(sizeof(int *) * n); //分配指针数组
b[0] = (int *)malloc(sizeof(int) * n * k); //一次性分配所有空间
for(j=1; j {
b[j] = b[j-1] + k;
}
int **c;
int q;
c = (int **)malloc(sizeof(int *) * m); //分配指针数组
c[0] = (int *)malloc(sizeof(int) * m * k); //一次性分配所有空间
for(q=1; q {
c[q] = c[q-1] + k;
}
////////////////////initialize a[][]///////////////////////////////////////
ch=fgetc(fp);
while(ch!=EOF)
{
for(int tmp1=0;tmp1 {
for(int tmp2=0;tmp2 {
ch=fgetc(fp);
*(*(a+tmp1)+tmp2)=ch-‘0‘;
ch=fgetc(fp);
}
}
}
fclose(fp);
//////////////////// initialize b[][]///////////////////////////////////////
ch=fgetc(fp1);
while(ch!=EOF)
{
for(int tmp1=0;tmp1 {
for(int tmp2=0;tmp2 {
ch=fgetc(fp1);
*(*(b+tmp1)+tmp2)=ch-‘0‘;
ch=fgetc(fp1);
}
}
}
fclose(fp1);
////////////////////execute function.cpp////////////////////////////////////
c=matrixmulti(mnkabc);
///////////////////write out.file//////////////////////////////////////////
fp2=fopen(“out.file““w“);
if(fp2==NULL)
{
printf(“error load out.file“);
}
for(int tmp1=0;tmp1 {
for(int tmp2=0;tmp2 {
ch=*(*(c+tmp1)+tmp2)+‘0‘;
fputc(chfp2);
ch=‘ ‘;
fputc(chfp2);
}
ch=‘\n‘;
fputc(chfp2);
}
fclose(fp2);
////////////////////free allocated dynamic arrays///////////////////////////
free(a[0]);
free(a);
free(b[0]);
free(b);
getchar();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2685 2012-05-27 11:19 darray\darray\daaray.cpp
文件 3335 2012-05-27 10:11 darray\darray\darray.vcxproj
文件 1178 2012-05-27 10:11 darray\darray\darray.vcxproj.filters
文件 143 2012-05-27 08:47 darray\darray\darray.vcxproj.user
文件 1086 2012-05-27 11:21 darray\darray\Debug\cl.command.1.tlog
文件 2218 2012-05-27 11:21 darray\darray\Debug\CL.read.1.tlog
文件 1010 2012-05-27 11:21 darray\darray\Debug\CL.write.1.tlog
文件 10583 2012-05-27 11:20 darray\darray\Debug\daaray.obj
文件 381 2012-05-27 11:21 darray\darray\Debug\darray.exe.intermediate.manifest
文件 54 2012-05-27 11:21 darray\darray\Debug\darray.lastbuildstate
文件 1867 2012-05-27 11:21 darray\darray\Debug\darray.log
文件 691 2012-05-27 08:48 darray\darray\Debug\darray.vcxprojResolveAssemblyReference.cache
文件 0 2012-05-27 08:48 darray\darray\Debug\darray.write.1.tlog
文件 5080 2012-05-27 11:21 darray\darray\Debug\function.obj
文件 2400 2012-05-27 11:21 darray\darray\Debug\li
文件 2610 2012-05-27 11:21 darray\darray\Debug\li
文件 632 2012-05-27 11:21 darray\darray\Debug\li
文件 416 2012-05-27 11:21 darray\darray\Debug\mt.command.1.tlog
文件 602 2012-05-27 11:21 darray\darray\Debug\mt.read.1.tlog
文件 242 2012-05-27 11:21 darray\darray\Debug\mt.write.1.tlog
文件 52224 2012-05-27 11:21 darray\darray\Debug\vc100.idb
文件 61440 2012-05-27 11:21 darray\darray\Debug\vc100.pdb
文件 486 2012-05-27 11:21 darray\darray\function.cpp
文件 116 2012-05-27 10:27 darray\darray\function.h
文件 21 2012-05-27 09:43 darray\darray\in1.file
文件 9 2012-05-27 09:51 darray\darray\in2.file
文件 2685 2012-05-27 11:21 darray\darray\main.c
文件 12 2012-05-27 11:21 darray\darray\out.file
文件 1986560 2012-05-27 11:23 darray\darray.sdf
文件 885 2012-05-27 08:48 darray\darray.sln
............此处省略14个文件信息
- 上一篇:步进伺服电机加减速控制C语言
- 下一篇:VC++采用内存映射方式高效率读写大数据
相关资源
- VC++采用内存映射方式高效率读写大数
- 步进伺服电机加减速控制C语言
- 页面置换算法OPT、FIFO、LRU实现--C++版
- 模拟文件系统的c语言实现
- VS2013 CLR Windows窗体应用程序补丁
- (严蔚敏)数据结构视频教程C语言版
- c语言车票管理系统
- C 经典100例 C语言的经典小程序,100个
- 分支限界法求圆排列问题
- 编写C语言程序,模拟UNIX磁盘空间管理
- pos机收费管理程序
- http 协议解析类 c++
- 用C++语言写的完整的人脸识别程序源
-
mfc通过xm
l文件生成word文档 - 任务管理器MFC实现
- 哈夫曼最小生成树及最短路径代码
- 基于C语言实现的网络爬虫
- 国密SM4的5中模式C语言实现,vs工程,
- C语言数据结构程序表达式求值 二叉树
- graphics.h,bios.h和libbgi.a
- C++写的多级反馈队列代码
- c++读取ini文件封装类
- 图像处理 FFT快速傅里叶变换 C代码
- opencv 视觉 追踪跟踪 经典kcf算法
- C语言练习指针及答案
- 33节点前推回代潮流计算c程序
- 北理乐学 C语言 编程题源代码
- MFC的·绘图代码,模仿CAD的界面是我找
- ECC加密 RSA加密 C++ 简单实现 不带大数
- 基于linux下的图像缩小 c语言
评论
共有 条评论