求c语言高手,急!!!!!!! 5

DebugAssertionFailed!program:F:\VC98\MSDEV98\MYPROJECTS\Debug\课设.exefile:fscanf.cline... Debug Assertion Failed!
program:F:\VC98\MSDEV98\MYPROJECTS\Debug\课设.exe
file:fscanf.c
line:54
Expression:stream!=NULL
for information on how your program can cause an assertion failure,see the Visual C++ documentation on asserts.

编译没提示有错误,但运行时出现这种情况,如何解决
原程序:
#include<stdio.h>
#include<math.h>
void main()
{
double x0,y0,h,x1,y1,k1,k2,k3,k4;
unsigned n,N;
FILE *fp;
fp=fopen("IN6.txt","r");
fscanf(fp,"%lf%lf",&x0,&y0);
fscanf(fp,"%lf",&h);
fscanf(fp,"%lf%lf",&x1,&y1);
fclose(fp);
N=(unsigned)((y1-x1)/h);
fp=fopen("OUT6.doc","w");
fprintf(fp,"xn\t\tyn\n");
printf("xn\tyn\n");
for(n=0;n<N;n++)
{
x1=x0+h;
k1=sqrt(x0*x0+y0*y0);
k2=sqrt((x0+h/2)*(x0+h/2)+(y0+h/2*k1)*(y0+h/2*k1));
k3=sqrt((x0+h/2)*(x0+h/2)+(y0+h/2*k2)*(y0+h/2*k2));
k4=sqrt((x1)*(x1)+(y0+h*k3)*(y0+h*k3));
y1=y0+h/6*(k1+2*k2+2*k3+k4);
fprintf(fp,"%.3lf\t%lf\n",x1,y1);
printf("%.3lf\t%lf\n",x1,y1);
x0=x1;
y0=y1;
}
fclose(fp);
}
展开
 我来答
leiyangbdwk
2011-12-02 · TA获得超过3295个赞
知道大有可为答主
回答量:4975
采纳率:12%
帮助的人:4388万
展开全部
以前我也遇到过类似错误。
你看看是不是写printf或者sprintf的时候,有些参数写错啦。
-----------------------
fp=fopen("IN6.txt","r");
这里,r改成rb等其他的试试,后面w也一样。
你把每个都试试。
hm_anwei
2011-12-02 · TA获得超过193个赞
知道小有建树答主
回答量:307
采纳率:100%
帮助的人:336万
展开全部
Expression:stream!=NULL
文件流异常~
你从fp=fopen("IN6.txt","r");打上断点 看看各语句执行后 变量值是否正常
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JupterLB
2011-12-02 · 超过11用户采纳过TA的回答
知道答主
回答量:50
采纳率:0%
帮助的人:35.7万
展开全部
就这么点信息 怎么看?不把错误代码贴出来?想看assert错误 可以google msdn 里面查查看,例如
assert(c>0),如果c<=0,那么就会出现assert错误。
追问
代码贴出来了
追答
没有问题啊! 估计是你运行程序的时候把word文档打开了吧,这样写的时候会出错!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
陌陌唯树788
2011-12-02
知道答主
回答量:11
采纳率:0%
帮助的人:1.8万
展开全部
文件名后缀加“.c” 你看看行不行。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式