c语言double的除法,c语言 除法用float可以用 double就出错是怎么回事
发布日期:2022-02-18 13:19:58 浏览次数:10 分类:技术文章

本文共 932 字,大约阅读时间需要 3 分钟。

c语言 除法用float可以用 double就出错是怎么回事0

dcebd7a0de6265b6ccae5ead692f1eab.pnggi24362013.03.22浏览112次分享举报

#include "stdlib.h"

#include "stdio.h"

FILE *fp;

double *linspace(double,double,int);

int main(void){

double start,end;

int Npoint,i;

double *result;

printf("input start and end :!\n");

scanf(" %f %f",&start,&end);

printf("intput Npoint\n");

scanf(" %d",&Npoint);

result=linspace(start,end,Npoint);

if((fp=fopen("lin.dat","w"))==NULL){

printf("error when open the file lin.dat.\n");

return 1;

}

for(i=0;i

// printf("%f\n",result[i]);

fprintf(fp,"%f\n",result[i]);

}

free(result);

fclose(fp);

return 0;

}

double *linspace(double start,double end,int Npoint){

double *data;

double interval;

int i;

data=(double *)malloc(Npoint*sizeof(double));

interval=(end-start)/(Npoint-1);

printf("interval is %f\n",interval);

data[0]=start;

for(i=1;i

data[i]=data[i-1]+interval;

}

return data;

}

源程序如上,把double改成float就能正常运行,

我判断不正常的依据是 interval=(end-start)/(Npoint-1);

这个interval的输出结果不正确。

转载地址:https://blog.csdn.net/weixin_28926205/article/details/117024367 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:android 主流机型排行,安卓手机性能排行:华为Mate40 Pro仅排第四,第一名无可撼动...
下一篇:c语言成绩管理程序有密码,《成绩管理程序设计报告(含代码C语言).doc

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月24日 07时01分46秒