为什么这个c语言程序有时候运行是正确的,有时是错误的?

#include"stdio.h"#include"stdlib.h"#include"string.h"#defineLENsizeof(structshuju)str... #include "stdio.h"
#include "stdlib.h"
#include "string.h"
#define LEN sizeof(struct shuju)
struct shuju
{
char name[20];
char writer[20];
int no;
char press[20];
char date[8];
float price;
struct shuju *next;
};
void duqu()
{
FILE *fp;struct shuju *head2,*tail,*new1;int count=0,i;
fp=fopen("10000.txt","r");
for(i=1;i<=2;i++)
{
new1=(struct shuju *)malloc(LEN);
fscanf(fp,"%s",new1->name);
fscanf(fp,"%s",new1->writer);
fscanf(fp,"%d",&new1->no);
fscanf(fp,"%s",new1->press);
fscanf(fp,"%s",new1->date);
fscanf(fp,"%f",&new1->price);
count++;
new1->next=NULL;
if(count==1)
{
head2=new1;
}
else
tail->next=new1;
tail=new1;
}
printf("1");
fclose(fp);
}
void main()
{
duqu();
}
我试过好多次,有些时候程序能运行,有时程序运行不起来。真心不知道怎么回事啊,是不是系统有问题呢?
展开
 我来答
百度网友3b3ece2
2011-05-24 · TA获得超过404个赞
知道小有建树答主
回答量:284
采纳率:0%
帮助的人:133万
展开全部
一般fopen时要判断下:
if((fp = fopen("1000.txt","r")) == NULL)
{
printf("error open file!\n");
exit(0);
}
好像没什么问题了。
再就是楼主编程风格太烂了。建议上网找下《高质量c++、c 编程指南》看看。
追问
怎么个烂法啊?你帮我代码修改下我学习下。谢谢了。
追答
网上下个《高质量c++、c  编程指南》看看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式