#include <stdio.h> #define A 34 #define B 3 int main() { char data[A][B]; FILE *fp;//文件指针 fp = fopen("data.txt","r+");//打开TXT文件 if(!fp) printf("不能找到data.TXT!");//判断能否能打开文件 for(int i=0;i<20;i++) { for(int j=0;j<5;j++) fscanf(fp,"%ld",&data[i][j]); } fclose(fp); for(int i = 0;i<5;i++) { for(int j = 0;j<5;j++) { printf("data[%d][%d]=%ld\n" , i,j,data[i][j]); } } system("pause"); return 0; }
下面是用到的data.txt和运行结果,求高手来分析一下为什么结果和实际不一样
解决方案
40
#include <stdio.h> #define A 35 #define B 4 int main() { int data[A][B]; FILE *fp; fp = fopen("data.txt","r"); if(!fp) { printf("不能找到data.TXT!"); return 1; } for(int i=0;i<A;i++) for(int j=0;j<B;j++) fscanf(fp,"%d",&data[i][j]); fclose(fp); for(int i = 0;i<A;i++) for(int j = 0;j<B;j++) printf("data[%d][%d]=%d\n" , i,j,data[i][j]); system("pause"); return 0; }