c语言问题,为什么这样无法把数据导入

intmain(){voidll(float(*p)[5]);voidlq(float(*p)[5]);voidqq(float(*p)[5]);floata[4][5]... int main(){ void ll(float (*p)[5]); void lq(float (*p)[5]); void qq(float (*p)[5]); float a[4][5]; int j,i; FILE *fp=fopen("1.txt","r"); char y='Y'; if(fp==NULL) { printf("cannot open this file"); exit(0); } for(i=0;i<4;i++) { for(j=0;j<5;j++) fread(*(a+i)+j,sizeof(float),1,fp); } for(i=0;i<4;i++) { for(j=0;j<5;j++) { printf("%8.1f",a[i][j]); } putchar(10); } 展开
 我来答
White_MouseYBZ
2017-02-26 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6584万
展开全部
fread这个函数是按“字段”读取的,所以被读的文件应该是用fwrite存入的,否则雀迹由于“字段”安排不匹配就不能正确读得数据。运岁隐你可改用fscanf函数读取,它在格式化字符串控制下可以把各数据按不同的类型读入。把旁厅原代码中的fread(*(a+i)+j,sizeof(float),1,fp);改为fscanf(fp,"%f",*(a+i)+j);就行……
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式