一个c语言程序改错

来源:百度知道 编辑:UC知道 时间:2024/05/30 19:38:12
下面是一个随机数方面的程序,各部分我已注明,请大家给与指导,不胜感激。(我估计是错在数组那个地方,请大家用用心了。)拜谢!!!!!!!!!!!!!!!!
#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
double doublemod(double a,double b)
{
int i;
double value;
i=value;
i=(int)(a/b);
value=a-i*b;
return value;
}....................................//随机数的算法
double *edisrndsq(double *r,int n,double b,double c,double m)
{
double *value,*vp;
int i;
if(n>=1)
{
value=(double *)malloc(n*sizeof(double));
for(i=0,vp=value;i<n;i++,vp++)
{
*r=doublemod(*r,b);
*r=doublemod((*r)*m+c,b);
*vp=*r/b;
}
return (value);
}
return 0;
}。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。//产生随机数的函数。
void swap(int *a,int *b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;
}。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。//互相赋值
void main()
{
double min,max,All;
int site[5];

以下是我用VC++6.0做了修改后的程序,能够运行成功,结果也是正确的!(TC上我没试过,按理说应该也能运行)

但我并不知道楼主要这个程序到底是要实现什么功能,为什么没有为数组site[0]赋初值,我在程序中加上了,楼主可以自已根据情况改动.

个人感觉楼主在定义变量时变量类型使用非常凌乱,这是导致程序出错而无法运行的根源所在,建议楼主在这方面尽量细心一点.

改了我好长时间,别忘了给我加分哦!!

编程多交流,我的QQ:912137504

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
double doublemod(double a,double b)
{
int i;
double value;
i=value;
i=(int)(a/b);
value=a-i*b;
return value;
}

//随机数的算法
double *edisrndsq(double *r,int n,double b,double c,double m)
{
double *value,*vp;
int i;
if(n>=1)
{
value=(double *)malloc(n*sizeof(double));
for(i=0,vp=value;i<n;i++,vp++)
{
*r=doublemod(*r,b);
*r=doublemod((*r)*m+c,b);
*vp=*r/b;
}
return (value);
}
return 0;
}

//产生随机数的函数